Function at 0x100372fc
Capabilities:
Check os version
Create process on windows
Delete directory
Delete file
Get common file path
Get disk information
Get file attributes
Get keyboard layout
Get system information on windows
Identify system language via api
Query or enumerate registry key
Read .ini file

Disassembly:
mov eax, 0x1008f36a
call fcn.1008f0c8
mov eax, 0x12e4
call fcn.1008a4a0
mov byte [ebp - 0x79], dl
xor eax, eax
xor edx, edx
mov dword [ebp - 0x20], 0xe87df2f4
inc edx
mov dword [ebp - 0x80], ecx
push ebx
mov dword [ebp - 0x3c], edx
mov ebx, 0xcff0ea75
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
push esi
push edi
jge 0x1003734b
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x960], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10037336
xor eax, eax
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
push 0xfffffffffffffff1
mov dword [ebp - 0x20], eax
pop edi
jmp 0x1003739a
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x960]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x960]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 8
cmp dword [ebp - 0x3c], edi
je 0x10037397
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x1003738c
push eax
call esi
xor eax, eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], edi
jne 0x1003737e
xor edx, edx
inc edx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jle 0x10037359
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x20], 0xe87df2f4
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100373cf
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xa48], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100373ba
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10037415
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xa48]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xa48]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 8
cmp dword [ebp - 0x3c], edi
je 0x10037412
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10037407
push eax
call esi
xor eax, eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], edi
jne 0x100373f9
xor edx, edx
inc edx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jle 0x100373d4
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x28], 0x4ab274bf
mov dword [ebp - 0x34], 0xc9e53e58
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10037452
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x32c], 0xac64a684
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10037439
xor eax, eax
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x1003746c
push 0x14bc
push eax
call edi
xor edx, edx
inc edx
mov dword [ebp - 0x32c], 2
cmp dword [ebp - 0x32c], edx
jle 0x100374ac
mov edi, 0xfff8
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x28], 0x50e6
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
sub ecx, eax
mov dword [ebp - 0x34], ecx
dec dword [ebp - 0x32c]
cmp dword [ebp - 0x32c], edx
jg 0x10037483
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov dword [ebp - 0x20], 0xe87df2f4
xor eax, eax
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100374d6
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x970], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100374c1
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x1003751e
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x970]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x970]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 8
cmp dword [ebp - 0x3c], 0xfffffff1
je 0x1003751b
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x1003750f
push eax
call esi
xor eax, eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xfffffff1
jne 0x10037501
xor edx, edx
inc edx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jle 0x100374db
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x20], 0xfffffff7
mov dword [ebp - 0x18], 0x8d239be9
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edx
jge 0x10037559
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xe4], 0xbbf9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10037541
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
push 0xfffffffffffffff6
pop ecx
jge 0x1003757a
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x2b4], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10037565
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x10037590
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x980], 0x9172c2e8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x1003757f
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2b4]
mov ebx, dword [sym.imp.USER32.dll_GetDlgItemInt]
xor eax, eax
push 0xffffffffffffffff
pop ecx
cmp dword [ebp - 0x2b4], eax
je 0x1003766c
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100375d8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x4f0], 0x688
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100375bf
xor eax, eax
cmp dword [ebp - 0xe4], eax
jne 0x100375f6
mov eax, dword [ebp - 0x4f0]
mov eax, dword [ebp - 0x2b0]
cmp eax, dword [ebp - 0x4f0]
jne 0x10037602
xor eax, eax
cmp dword [ebp - 0x4f0], eax
je 0x10037604
mov ecx, edx
jmp 0x10037606
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0xe4]
sub eax, ecx
cmp eax, dword [ebp - 0x2b0]
jle 0x10037621
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10037623
mov eax, edx
jmp 0x10037623
xor eax, eax
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x4ec]
add eax, dword [ebp - 0x18]
cmp eax, 0xb332
setl cl
cmp ecx, 0xc280563a
sbb eax, eax
neg eax
mov dword [ebp - 0x97c], eax
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x10037798
push edx
push eax
push 0x1214
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call ebx
jmp 0x10037796
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edx
jg 0x10037796
xor esi, esi
inc esi
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x1003769d
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x758], 0x7d98
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10037684
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jg 0x10037784
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x10], eax
jmp 0x100376c2
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xa08], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100376b5
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp dword [ebp + eax*4 - 0x2b0], ecx
je 0x10037763
mov eax, dword [ebp - 0x758]
mov dword [ebp - 0xa04], eax
test eax, eax
je 0x1003771a
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0xe4], ecx
je 0x1003770a
xor eax, eax
mov dword [ebp - 0xa04], eax
cmp dword [ebp - 0x758], eax
jl 0x1003770c
mov eax, esi
jmp 0x1003770c
xor eax, eax
imul eax, eax, 0x5e23b574
test eax, eax
je 0x1003771a
mov edx, esi
jmp 0x1003771e
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x2b0]
cmp edx, eax
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0xe4]
cmp dword [ebp - 0x28], eax
jle 0x1003774f
xor eax, eax
cmp dword [ebp - 0x758], eax
je 0x10037751
mov ecx, esi
jmp 0x10037753
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0xe4], ecx
je 0x10037763
mov eax, esi
jmp 0x10037765
xor eax, eax
imul eax, eax, 0xcdf2
push 0xffffffffffffffff
pop ecx
mov dword [ebp - 0x97c], eax
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jle 0x100376a9
or ecx, ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x1003767b
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
xor eax, eax
mov dword [ebp - 0x28], 0x4ab274bf
mov dword [ebp - 0x34], 0xc9e53e58
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100377c8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x35c], 0xac64a684
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100377af
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100377d9
push 0x14bc
push eax
call edi
xor edx, edx
mov dword [ebp - 0x35c], 2
inc edx
cmp dword [ebp - 0x35c], edx
jle 0x1003781c
mov esi, 0xfff8
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x28], 0x50e6
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
sub ecx, eax
mov dword [ebp - 0x34], ecx
dec dword [ebp - 0x35c]
cmp dword [ebp - 0x35c], edx
jg 0x100377f3
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
or eax, 0xffffffff
mov dword [ebp - 0x460], eax
mov dword [ebp - 0x45c], eax
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x454], eax
xor eax, eax
mov dword [ebp - 0x24], 0x56f9b2cf
push 3
mov dword [ebp - 0x10], 0xcadcda6a
pop ecx
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], eax
jl 0x1003791e
push 4
pop edi
push 0xfffffffffffffff6
pop esi
mov dword [ebp - 0x20], esi
xor edx, edx
mov dword [ebp - 0x28], 0xcfdef05d
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x54], 0xfffffffc
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x45c]
cmp ecx, eax
mov ecx, dword [ebp - 0x20]
setne dl
lea eax, [edx - 0x2739a7ea]
add ecx, eax
jne 0x10037897
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x45c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x460]
imul eax, dword [ebp - 0x20]
test eax, eax
je 0x100378b9
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x460]
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x460]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x460]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], 0xfffffffb
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x454]
cmp ecx, eax
setg dl
sub edx, edi
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
xor eax, eax
mov dword [ebp - 0x54], eax
dec dword [ebp - 0x24]
jns 0x1003785c
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
xor edx, edx
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
inc edx
push 3
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x30], 0x4caa8e55
mov dword [ebp - 0x28], 0xbae055a2
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10037961
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xdf4], 0x958900fd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10037949
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10037977
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xbd4], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10037966
mov eax, dword [ebp - 0x30]
xor eax, eax
cmp dword [ebp - 0xdf0], eax
je 0x10037990
cmp dword [ebp - 0x24], eax
je 0x10037990
mov eax, edx
mov dword [ebp - 0x30], eax
xor edx, edx
mov ecx, dword [ebp - 0x30]
add ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setge dl
xor ecx, ecx
cmp eax, edx
push 0xfffffffffffffffe
setl cl
xor eax, eax
mov dword [ebp - 0xbd4], ecx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffe6
pop ecx
jne 0x10037b1b
push 0xfffffffffffffff6
xor esi, esi
pop edi
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100379de
call dword [sym.imp.USER32.dll_GetMessageTime]
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xfffffff4
jne 0x10037aff
mov dword [ebp - 0x20], 0xfffffffc
mov dword [ebp - 0x50], 0xb017
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x64], 0xffff
mov dword [ebp - 0x34], 0xe236
mov dword [ebp - 0x20], 2
cmp dword [ebp - 0x20], eax
jl 0x10037a88
push 4
mov dword [ebp - 0x34], 0xb171c250
mov dword [ebp - 0x10], eax
pop ecx
jmp 0x10037a36
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x11a0], 0x8a1b
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10037a25
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0xbd4]
cmp ecx, eax
mov eax, dword [ebp - 0x1194]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
add ecx, 0x2840cc74
cmp ecx, 0xfffffffa
jl 0x10037a70
lea ecx, [esi + 1]
cmp dword [ebp - 0x2c], eax
jne 0x10037a72
mov ecx, eax
mov eax, dword [ebp - 0x38]
sub ecx, eax
add ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x28]
mov dword [ebp - 0x34], ecx
dec dword [ebp - 0x20]
push 0
pop eax
jns 0x10037a16
mov eax, dword [ebp - 0x38]
mov ecx, 0x885c3b36
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
cmp ecx, eax
push 0
sbb eax, eax
xor edx, edx
neg eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xdf0]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x30]
cmp eax, ecx
setl dl
cmp edx, 0xb1310f07
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setle dl
xor ecx, ecx
cmp eax, edx
pop eax
setge cl
mov dword [ebp - 0x34], ecx
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xfffffff4
je 0x100379eb
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe6
push 0xfffffffffffffffe
pop ecx
je 0x100379ca
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov dword [ebp - 0x3c], 0x20e8
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x10], eax
jmp 0x10037b3b
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xbe8], 0xf37831e4
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10037b2a
mov eax, dword [ebp - 0x3c]
or edx, 0xffffffff
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xbe4], eax
mov dword [ebp - 0x3c], 0x19
cmp dword [ebp - 0x3c], 0x33
jl 0x10037b95
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x34], 0x5af8b513
mov dword [ebp - 0x34], 8
mov eax, dword [ebp - 0xbe8]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
xor ecx, ecx
neg eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x3c]
test eax, eax
setns cl
mov dword [ebp - 0x34], ecx
inc dword [ebp - 0x3c]
jmp 0x10037b57
xor ecx, ecx
xor eax, eax
mov dword [ebp - 0x3c], eax
inc ecx
mov dword [ebp - 0x20], 0x3411
mov dword [ebp - 0x48], ecx
mov ecx, 0xfcb1
mov dword [ebp - 0x50], 0xfffffff8
cmp dword [ebp - 0x3c], eax
je 0x10037bdf
mov dword [ebp - 0x10], eax
jmp 0x10037bce
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xbc8], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10037bbd
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xbc8], eax
jmp 0x10037c5d
mov dword [ebp - 0x7e8], ecx
mov dword [ebp - 0x7e4], ecx
mov dword [ebp - 0x7e0], ecx
mov dword [ebp - 0x7dc], ecx
push 4
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], eax
pop ecx
jmp 0x10037c0f
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1088], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10037c02
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x7e4]
mov eax, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x7e4]
mov eax, dword [ebp - 0x7e4]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
setne dl
sub edx, 0x6a5b5cf0
mov dword [ebp - 0x107c], edx
xor eax, eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0xfffffff0
jg 0x10037dc5
xor edi, edi
inc edi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x28], 0xfffffffc
mov dword [ebp - 0x34], 0xbe926f5d
mov dword [ebp - 0x3c], eax
jmp 0x10037da2
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x64], 0x268dd2ac
mov dword [ebp - 0x20], 0xcff2
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10037cbb
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x588], 0xecc33bab
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10037ca2
xor eax, eax
inc dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jg 0x10037d9f
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x588], 0
je 0x10037d6e
mov eax, dword [ebp - 0x28]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x588]
cmp eax, edi
mov eax, dword [ebp - 0x44]
setne cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setne cl
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x588]
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x50]
neg edx
sbb edx, edx
xor eax, eax
inc edx
add edx, dword [ebp - 0x44]
cmp edx, 0xaf32
setl al
cmp eax, 9
jae 0x10037d41
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x588], 0
je 0x10037d41
mov ecx, edi
jmp 0x10037d45
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp + eax*4 - 0x588]
xor eax, eax
cmp ecx, 0x584d75f0
setge al
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setle cl
mov dword [ebp + eax*4 - 0x588], ecx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x64]
sub ecx, 0xc39b9878
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 7
setne al
mov dword [ebp - 0x64], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10037ccb
xor eax, eax
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x15
jle 0x10037c88
mov eax, dword [ebp - 0x34]
dec dword [ebp - 0x48]
cmp dword [ebp - 0x48], 0xfffffff0
push 0
pop eax
jle 0x10037c6f
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov dword [ebp - 0x2c], 0xe87df2f4
xor ecx, ecx
mov dword [ebp - 0x3c], 0xf444
inc ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ecx
jge 0x10037e00
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa8], 0x6e5c7a00
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10037de8
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ecx
jge 0x10037e20
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x718], 0x2e63372
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10037e08
xor eax, eax
push 4
mov dword [ebp - 0x1c], eax
pop edx
jmp 0x10037e35
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1148], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10037e28
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x3c], 0xffff
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x10037e54
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa8]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xa8]
add eax, dword [ebp - 0x24]
cmp eax, 0x6cce
mov eax, dword [ebp - 0x20]
setl cl
xor edx, edx
cmp ecx, 0x9e88
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
add ecx, dword [ebp - 0x24]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x3c], 0xfffffff4
cmp dword [ebp - 0x3c], 0x18
je 0x10037ffd
xor esi, esi
push 0xfffffffffffffffe
inc esi
pop edi
mov dword [ebp - 0x34], edi
xor eax, eax
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10037ed5
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xbdc], 0xa95534fd
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10037ebc
xor eax, eax
mov dword [ebp - 0x20], 0x13
cmp dword [ebp - 0x20], 0xb
jl 0x10037fe4
jmp 0x10037eea
xor eax, eax
mov dword [ebp - 0x8f8], 0xa88f
mov dword [ebp - 0x8f4], 0xa88f
mov dword [ebp - 0x8f0], 0xa88f
mov dword [ebp - 0x8ec], 0xa88f
mov dword [ebp - 0x24], eax
jmp 0x10037f64
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10037f41
push eax
push 0xfb5
push 0x61d
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetDIBColorTable]
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10037f61
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x10037f17
mov eax, dword [ebp - 0x8f0]
xor edx, edx
mov eax, dword [ebp - 0x34]
push 0xfffffffffffffffd
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x8f4]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], eax
je 0x10037f9e
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x718]
mov eax, dword [ebp - 0x8ec]
xor eax, eax
mov dword [ebp - 0xbd8], esi
cmp dword [ebp - 0x3c], eax
je 0x10037fc4
mov ecx, esi
cmp dword [ebp - 0x28], eax
jne 0x10037fc6
mov ecx, eax
xor eax, eax
cmp ecx, 0x6f2c
setge al
mov dword [ebp - 0x1140], eax
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xb
jge 0x10037ee8
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x18
jne 0x10037eab
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
xor ecx, ecx
inc ecx
mov dword [ebp - 0x3c], ecx
push 4
pop eax
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x30], 0xe6da5043
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10038034
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xaa0], 0xfffffffa
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1003801b
xor eax, eax
dec dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ecx
jg 0x10038060
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0xaa0], 0
jne 0x1003805e
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xaa0]
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jle 0x1003803f
xor eax, eax
mov dword [ebp - 0x40], 0x99ac7894
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10038084
push 0xa81
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_MonitorFromWindow]
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10038096
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
xor eax, eax
push 2
mov dword [ebp - 0x10], eax
pop ecx
cmp dword [ebp - 0x10], ecx
jge 0x100380b9
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x990], 0xcff0ea75
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100380a1
xor eax, eax
mov dword [ebp - 0x20], 4
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x100380df
push 0xfffffffffffffffe
pop edx
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x3bc], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100380cb
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100380f8
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
xor eax, eax
xor edx, edx
inc edx
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], eax
jl 0x100381af
mov dword [ebp - 0x28], 0x3ae5d5ec
mov dword [ebp - 0x34], 0xb55e9731
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10038137
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x47c], 0xdc7555b7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x1003811e
xor eax, eax
mov dword [ebp - 0x47c], edx
cmp dword [ebp - 0x47c], eax
jl 0x1003819d
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x3bc], 0
jne 0x10038176
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x3bc]
xor eax, eax
cmp dword [ebp - 0x474], eax
je 0x1003816c
mov eax, dword [ebp - 0x478]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x3bc]
mov eax, dword [ebp - 0x3b8]
xor ecx, ecx
mov eax, dword [ebp - 0x3b8]
cmp eax, 0x7bb1a88a
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x47c]
jns 0x10038145
mov eax, dword [ebp - 0x478]
dec dword [ebp - 0x20]
push 0
pop eax
jns 0x10038107
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], edx
jg 0x1003860a
push 0xfffffffffffffff6
pop ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x28], 0x1bc383c6
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x100381eb
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd2c], 0xb3e90a62
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x100381d3
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x1003820b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xbb8], 0x1ded
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x100381f3
xor eax, eax
push 0xfffffffffffffffd
mov dword [ebp - 0x20], eax
pop edi
jmp 0x1003826f
mov dword [ebp - 0x40], 0x7dc4
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x40], 0xfffffff9
mov dword [ebp - 0x40], 0xfffffff8
mov dword [ebp - 0x40], 0x17c1
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edx
jge 0x10038251
push 0xfffffffffffffffe
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe28], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edx
jl 0x1003823d
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10038269
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_EnumCalendarInfoW]
xor edx, edx
xor eax, eax
inc edx
inc dword [ebp - 0x28]
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x10038213
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x990]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x990]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 8
cmp dword [ebp - 0x3c], 0xfffffff1
je 0x100385f5
xor edi, edi
inc edi
xor eax, eax
push 4
mov dword [ebp - 0x10], eax
pop ecx
cmp dword [ebp - 0x10], ecx
jge 0x100382c4
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x12a0], 0x70ad
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100382ac
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100382d7
push eax
push eax
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100382f8
push edi
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SelectPalette]
xor eax, eax
mov dword [ebp - 0x30], 0x66a0
xor ecx, ecx
mov dword [ebp - 0x38], eax
inc ecx
push 5
pop edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x44], 0x29f1
mov dword [ebp - 0x54], 0x1be33bd0
mov dword [ebp - 0x34], 0x6eaec28d
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x10038339
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x70], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10038328
xor eax, eax
cmp dword [ebp - 0x70], eax
jne 0x1003840b
mov edx, dword [ebp - 0x70]
sub edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x30]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x70]
sete cl
cmp ecx, edi
sbb edx, edx
add edx, 7
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
mov eax, dword [ebp - 0x70]
setle cl
add eax, ecx
jne 0x10038409
mov dword [ebp - 0x48], 0xfffffffa
xor edi, edi
mov dword [ebp - 0x10], eax
inc edi
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x70]
or eax, 0xffffffff
mov dword [ebp - 0x38], eax
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x100383a9
mov edx, eax
cmp dword [ebp - 0x10], eax
je 0x100383ab
mov edx, edi
mov ecx, dword [ebp - 0x48]
neg ecx
push 0xfffffffffffffff6
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, edx
setge al
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x70]
sub edx, 0x6aa1dd5c
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
pop eax
setle cl
cmp ecx, eax
jne 0x100383df
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x100383ef
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x48]
mov dword [ebp - 0x34], eax
jmp 0x100384b0
xor eax, eax
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x30], eax
jmp 0x1003849d
mov dword [ebp - 0x10], 0x8f2ba167
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10038443
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x3cc], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1003842a
xor eax, eax
mov dword [ebp - 0x3cc], eax
jmp 0x10038469
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10038463
push 0xa0c
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
xor eax, eax
inc dword [ebp - 0x3cc]
cmp dword [ebp - 0x3cc], eax
jle 0x1003844b
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], eax
jl 0x1003849a
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x70], 0
jne 0x10038498
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x10038493
call dword [sym.imp.KERNEL32.dll_GetVersion]
dec dword [ebp - 0x10]
jns 0x10038479
xor eax, eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], eax
jle 0x1003841a
xor edi, edi
mov dword [ebp - 0x34], 0x6dbc1c23
inc edi
mov eax, dword [ebp - 0x70]
xor edx, edx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x70]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setge dl
xor eax, eax
mov dword [ebp - 0x34], edx
mov byte [ebp - 0x11], al
mov dword [ebp - 0x40], 0xfffffffa
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x100384fe
push eax
call dword [sym.imp.USER32.dll_SetKeyboardState]
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10038510
push eax
call dword [sym.imp.COMDLG32.dll_FindTextW]
xor eax, eax
cmp byte [ebp - 0x11], 0
je 0x100385e5
mov dword [ebp - 0x10], 0xfffffff7
mov dword [ebp - 0x34], 0x7c9d
mov dword [ebp - 0x10], 0xa
cmp dword [ebp - 0x10], 0xffffffe2
je 0x100385c0
push 0xfffffffffffffff6
pop esi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x1003855e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x638], 0xe7d214c4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10038545
xor eax, eax
push 4
mov dword [ebp - 0x18], eax
pop ecx
jmp 0x10038577
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10a8], 0x65e3edfa
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10038566
mov eax, dword [ebp - 0x638]
neg eax
push 0
sbb eax, eax
neg eax
cmp esi, eax
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x34]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
mov dword [ebp - 0x109c], edx
mov eax, dword [ebp - 0x638]
cmp eax, edx
pop eax
setne cl
mov dword [ebp - 0x638], ecx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe2
jne 0x1003853c
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], al
je 0x100385e2
push 0x12d0
push 0xd4c
push 0x1617
push eax
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
xor eax, eax
push eax
call esi
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xfffffff1
jne 0x1003829f
xor edx, edx
inc edx
inc dword [ebp - 0x2c]
push 0
pop eax
cmp dword [ebp - 0x2c], edx
jle 0x100381bb
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov dword [ebp - 0x1c], 0x6cce57bf
or esi, 0xffffffff
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x28], 0xf407293c
mov dword [ebp - 0x34], edx
push 3
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x10038644
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb10], 0x9a7b445a
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1003862c
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10038656
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x190], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10038649
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
push 0xfffffffffffffffb
pop eax
mov dword [ebp - 0xb08], eax
cmp dword [ebp - 0x1c], eax
jle 0x10038675
mov eax, dword [ebp - 0xb10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x188]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x188]
push 2
mov dword [ebp - 0x24], eax
xor eax, eax
pop ecx
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], eax
jl 0x10038774
mov esi, 0x6fb6
mov eax, dword [ebp - 0x28]
xor ecx, ecx
mov eax, dword [ebp - 0x188]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x190]
mov eax, dword [ebp - 0x188]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x190]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x190]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x190]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x190]
test eax, eax
mov eax, dword [ebp - 0x24]
setne cl
mov eax, dword [ebp + eax*4 - 0x190]
add eax, ecx
jne 0x10038718
cmp dword [ebp - 0x188], eax
jne 0x10038718
mov edx, eax
mov eax, dword [ebp - 0x190]
xor ecx, ecx
cmp edx, eax
push 1
setg cl
add ecx, 9
mov dword [ebp - 0xb08], ecx
mov dword [ebp - 0xb80], esi
mov dword [ebp - 0xb7c], esi
mov dword [ebp - 0xb78], esi
mov dword [ebp - 0xb74], esi
mov eax, dword [ebp - 0x24]
pop edx
mov eax, dword [ebp + eax*4 - 0x190]
mov ecx, dword [ebp - 0xb80]
sub ecx, eax
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x190], ecx
dec dword [ebp - 0x24]
jns 0x100386b2
push 2
pop ecx
or esi, 0xffffffff
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x20], 0xfffffff7
mov dword [ebp - 0x18], 0x8d239be9
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edx
jge 0x100387aa
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x108], 0xbbf9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10038792
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ecx
jge 0x100387ca
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x29c], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x100387b2
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x100387e0
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x9a0], 0x9172c2e8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x100387cf
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x29c]
xor eax, eax
cmp dword [ebp - 0x29c], eax
je 0x100388b7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x1003881c
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x510], 0x688
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10038804
xor eax, eax
cmp dword [ebp - 0x108], eax
jne 0x1003883a
mov eax, dword [ebp - 0x510]
mov eax, dword [ebp - 0x298]
cmp eax, dword [ebp - 0x510]
jne 0x10038846
xor eax, eax
cmp dword [ebp - 0x510], eax
je 0x10038848
mov ecx, edx
jmp 0x1003884a
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x108]
sub eax, ecx
cmp eax, dword [ebp - 0x298]
jle 0x10038865
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10038867
mov eax, edx
jmp 0x10038867
xor eax, eax
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x50c]
cmp eax, 0xb332
setl cl
cmp ecx, 0xc280563a
sbb eax, eax
neg eax
mov dword [ebp - 0x99c], eax
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], al
je 0x100389e3
push edx
push eax
push 0x1214
call esi
push eax
call ebx
xor edx, edx
xor eax, eax
inc edx
jmp 0x100389e3
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edx
jg 0x100389db
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x100388e3
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x76c], 0x7d98
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100388cb
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jg 0x100389c9
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x10], eax
jmp 0x10038908
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xa18], esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100388fb
mov eax, dword [ebp - 0x18]
xor edi, edi
cmp dword [ebp + eax*4 - 0x298], edi
je 0x100389aa
mov eax, dword [ebp - 0x76c]
mov dword [ebp - 0xa14], eax
test eax, eax
je 0x1003895b
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x108], edi
je 0x1003894f
xor eax, eax
mov dword [ebp - 0xa14], eax
cmp dword [ebp - 0x76c], eax
jl 0x10038951
mov eax, edx
jmp 0x10038951
xor eax, eax
imul eax, eax, 0x5e23b574
test eax, eax
jne 0x1003895f
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x298]
cmp edx, eax
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x108]
cmp dword [ebp - 0x28], eax
jle 0x10038993
xor eax, eax
cmp dword [ebp - 0x76c], eax
je 0x10038995
xor edx, edx
inc edx
mov ecx, edx
jmp 0x1003899a
xor eax, eax
xor edx, edx
mov ecx, eax
inc edx
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x108], ecx
je 0x100389aa
mov eax, edx
jmp 0x100389ac
xor eax, eax
imul eax, eax, 0xcdf2
push 2
pop ecx
mov dword [ebp - 0x99c], eax
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jle 0x100388ef
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jle 0x100388c3
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
xor eax, eax
mov dword [ebp - 0x3c], 0xf444
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edx
jge 0x10038a14
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xac], 0x6e5c7a00
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x100389fc
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edx
jge 0x10038a34
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x6f4], 0x2e63372
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10038a1c
xor eax, eax
push 4
mov dword [ebp - 0x1c], eax
pop ecx
jmp 0x10038a49
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x11d8], edx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10038a3c
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x3c], 0xffff
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x10038a68
mov eax, dword [ebp - 0xac]
mov eax, dword [ebp - 0xac]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xac]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xac]
add eax, dword [ebp - 0x24]
cmp eax, 0x6cce
mov eax, dword [ebp - 0x20]
setl cl
xor edx, edx
cmp ecx, 0x9e88
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
add ecx, dword [ebp - 0x24]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x3c], 0xfffffff4
cmp dword [ebp - 0x3c], 0x18
je 0x10038bf8
xor edi, edi
inc edi
push 0xfffffffffffffffe
pop eax
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10038ae9
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xbf0], 0xa95534fd
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10038ad0
xor eax, eax
mov dword [ebp - 0x20], 0x13
cmp dword [ebp - 0x20], 0xb
jl 0x10038be5
jmp 0x10038afe
xor eax, eax
mov ecx, 0xa88f
mov dword [ebp - 0x878], ecx
mov dword [ebp - 0x874], ecx
mov dword [ebp - 0x870], ecx
mov dword [ebp - 0x86c], ecx
mov dword [ebp - 0x24], eax
jmp 0x10038b65
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10038b46
push eax
push 0xfb5
push 0x61d
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetDIBColorTable]
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10038b62
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x10038b20
mov eax, dword [ebp - 0x870]
xor edx, edx
mov eax, dword [ebp - 0x34]
push 0xfffffffffffffffd
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x874]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], eax
je 0x10038b9f
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xac]
mov eax, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x86c]
xor eax, eax
mov dword [ebp - 0xbec], edi
cmp dword [ebp - 0x3c], eax
je 0x10038bc5
mov ecx, edi
cmp dword [ebp - 0x28], eax
jne 0x10038bc7
mov ecx, eax
xor eax, eax
cmp ecx, 0x6f2c
setge al
mov dword [ebp - 0x11d0], eax
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xb
jge 0x10038afc
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x18
jne 0x10038abc
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov dword [ebp - 0x28], 0x4ab274bf
xor eax, eax
mov dword [ebp - 0x34], 0xc9e53e58
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10038c2a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x39c], 0xac64a684
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10038c11
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10038c3b
push 0x14bc
push eax
call edi
xor edx, edx
mov dword [ebp - 0x39c], 2
inc edx
cmp dword [ebp - 0x39c], edx
jle 0x10038c7e
mov edi, 0xfff8
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x28], 0x50e6
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
sub ecx, eax
mov dword [ebp - 0x34], ecx
dec dword [ebp - 0x39c]
cmp dword [ebp - 0x39c], edx
jg 0x10038c55
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
or eax, 0xffffffff
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], eax
xor eax, eax
mov dword [ebp - 0x24], 0x56f9b2cf
mov dword [ebp - 0x10], 0xcadcda6a
mov dword [ebp - 0x24], 3
cmp dword [ebp - 0x24], eax
jl 0x10038d75
push 4
pop edi
push 0xfffffffffffffff6
pop eax
mov dword [ebp - 0x20], eax
xor edx, edx
mov dword [ebp - 0x28], 0xcfdef05d
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x54], 0xfffffffc
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x43c]
cmp ecx, eax
mov ecx, dword [ebp - 0x20]
setne dl
lea eax, [edx - 0x2739a7ea]
add ecx, eax
jne 0x10038cfa
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x43c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x440]
imul eax, dword [ebp - 0x20]
test eax, eax
je 0x10038d1c
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x440]
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x440]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x440]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], 0xfffffffb
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x434]
cmp ecx, eax
setg dl
sub edx, edi
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
xor eax, eax
mov dword [ebp - 0x54], eax
dec dword [ebp - 0x24]
jns 0x10038cbc
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], eax
push 4
pop eax
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10038daa
push 0xfffffffffffffffe
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x37c], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10038d95
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10038dbf
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
xor eax, eax
xor edx, edx
inc edx
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], eax
jl 0x10038e76
mov dword [ebp - 0x28], 0x3ae5d5ec
mov dword [ebp - 0x34], 0xb55e9731
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10038dfe
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x488], 0xdc7555b7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10038de5
xor eax, eax
mov dword [ebp - 0x488], edx
cmp dword [ebp - 0x488], eax
jl 0x10038e64
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x37c], 0
jne 0x10038e3d
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x37c]
xor eax, eax
cmp dword [ebp - 0x480], eax
je 0x10038e33
mov eax, dword [ebp - 0x484]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x37c]
mov eax, dword [ebp - 0x378]
xor ecx, ecx
mov eax, dword [ebp - 0x378]
cmp eax, 0x7bb1a88a
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x488]
jns 0x10038e0c
mov eax, dword [ebp - 0x484]
dec dword [ebp - 0x20]
push 0
pop eax
jns 0x10038dce
mov dword [ebp - 0x20], 0xfffffff7
mov dword [ebp - 0x18], 0x8d239be9
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edx
jge 0x10038ea4
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xec], 0xbbf9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10038e8c
xor eax, eax
push 2
mov dword [ebp - 0x1c], eax
pop ecx
cmp dword [ebp - 0x1c], ecx
jge 0x10038ec7
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x2cc], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10038eaf
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x10038edd
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x9b0], 0x9172c2e8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10038ecc
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2cc]
xor eax, eax
cmp dword [ebp - 0x2cc], eax
je 0x100390b9
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x10038f19
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x4d8], 0x688
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10038f01
xor eax, eax
cmp dword [ebp - 0xec], eax
jne 0x10038f37
mov eax, dword [ebp - 0x4d8]
mov eax, dword [ebp - 0x2c8]
cmp eax, dword [ebp - 0x4d8]
jne 0x10038f43
xor eax, eax
cmp dword [ebp - 0x4d8], eax
je 0x10038f45
mov ecx, edx
jmp 0x10038f47
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0xec]
sub eax, ecx
cmp eax, dword [ebp - 0x2c8]
jle 0x10038f62
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10038f64
mov eax, edx
jmp 0x10038f64
xor eax, eax
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x4d4]
cmp eax, 0xb332
setl cl
cmp ecx, 0xc280563a
sbb eax, eax
neg eax
mov dword [ebp - 0x9ac], eax
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], al
je 0x10038fa2
push edx
push eax
push 0x1214
call esi
push eax
call ebx
xor eax, eax
xor ebx, ebx
inc ebx
or edx, 0xffffffff
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], 7
mov dword [ebp - 0x40], 0x631e19e9
push 3
mov dword [ebp - 0x1c], eax
pop ecx
cmp dword [ebp - 0x1c], ecx
jge 0x10038fdc
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xed4], 0xad6f2ee
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10038fc4
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jge 0x10038ffa
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1038], edx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10038fe5
xor eax, eax
push 4
mov dword [ebp - 0x1c], eax
pop edx
cmp dword [ebp - 0x1c], edx
jge 0x1003901d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x12c0], 0x58fb770a
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10039005
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1003903d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xbc0], 9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10039025
xor eax, eax
dec dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], ecx
jge 0x10039060
mov eax, dword [ebp - 0x3c]
mov dword [ebp + eax*4 - 0xed4], 0x4a9bacde
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], ecx
jl 0x10039048
xor eax, eax
mov dword [ebp - 0x3c], 0xf444
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x10039091
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa0], 0x6e5c7a00
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10039079
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x100390b1
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x6ec], 0x2e63372
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10039099
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x100391f9
xor ebx, ebx
mov dword [ebp - 0x20], eax
inc ebx
cmp dword [ebp - 0x20], ebx
jg 0x100391e5
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x100390e8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x778], 0x7d98
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100390d0
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jg 0x100391d3
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x10039118
or edx, 0xffffffff
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xa58], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10039106
mov eax, dword [ebp - 0x18]
xor edi, edi
cmp dword [ebp + eax*4 - 0x2c8], edi
je 0x100391b3
mov eax, dword [ebp - 0x778]
mov dword [ebp - 0xa54], eax
test eax, eax
je 0x1003916a
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0xec], edi
je 0x1003915a
xor eax, eax
mov dword [ebp - 0xa54], eax
cmp dword [ebp - 0x778], eax
jl 0x1003915c
mov eax, ebx
jmp 0x1003915c
xor eax, eax
imul eax, eax, 0x5e23b574
test eax, eax
je 0x1003916a
mov edx, ebx
jmp 0x1003916e
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x2c8]
cmp edx, eax
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0xec]
cmp dword [ebp - 0x28], eax
jle 0x1003919f
xor eax, eax
cmp dword [ebp - 0x778], eax
je 0x100391a1
mov ecx, ebx
jmp 0x100391a3
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
xor edi, edi
cmp dword [ebp + eax*4 - 0xec], ecx
mov eax, ebx
jne 0x100391b5
mov eax, edi
imul eax, eax, 0xcdf2
push 0
mov dword [ebp - 0x9ac], eax
inc dword [ebp - 0x18]
pop eax
push 2
pop ecx
cmp dword [ebp - 0x18], edi
jle 0x100390f4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x100390c8
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
xor eax, eax
jmp 0x10038fa5
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xfa0], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x100391ec
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x3c], 0xffff
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x10039218
mov eax, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xa0]
add eax, dword [ebp - 0x24]
cmp eax, 0x6cce
mov eax, dword [ebp - 0x20]
setl cl
xor edx, edx
cmp ecx, 0x9e88
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
add ecx, dword [ebp - 0x24]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x3c], 0xfffffff4
cmp dword [ebp - 0x3c], 0x18
je 0x100393a5
push 0xfffffffffffffffe
pop edi
mov dword [ebp - 0x34], edi
xor eax, eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10039296
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc04], 0xa95534fd
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1003927d
xor eax, eax
mov dword [ebp - 0x20], 0x13
cmp dword [ebp - 0x20], 0xb
jl 0x10039392
jmp 0x100392ab
xor eax, eax
mov ecx, 0xa88f
mov dword [ebp - 0x8d8], ecx
mov dword [ebp - 0x8d4], ecx
mov dword [ebp - 0x8d0], ecx
mov dword [ebp - 0x8cc], ecx
mov dword [ebp - 0x24], eax
jmp 0x10039312
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x100392f3
push eax
push 0xfb5
push 0x61d
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetDIBColorTable]
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x1003930f
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x100392cd
mov eax, dword [ebp - 0x8d0]
xor edx, edx
mov eax, dword [ebp - 0x34]
push 0xfffffffffffffffd
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x8d4]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], eax
je 0x1003934c
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x6ec]
mov eax, dword [ebp - 0x8cc]
xor eax, eax
mov dword [ebp - 0xc00], ebx
cmp dword [ebp - 0x3c], eax
je 0x10039372
mov ecx, ebx
cmp dword [ebp - 0x28], eax
jne 0x10039374
mov ecx, eax
xor eax, eax
cmp ecx, 0x6f2c
setge al
mov dword [ebp - 0xf98], eax
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xb
jge 0x100392a9
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x18
jne 0x1003926c
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov dword [ebp - 0x10], 0x69fdf99f
xor eax, eax
mov dword [ebp - 0x20], 0xf094
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100393d5
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd38], 0xcd795364
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100393bd
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10039432
mov dword [ebp - 0x18], 0xbf25cbd9
mov dword [ebp - 0x18], eax
jmp 0x100393f0
mov dword [ebp - 0x20], 0x79cf1813
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jle 0x100393e6
mov dword [ebp - 0x20], 0xffffffe9
jmp 0x10039429
mov dword [ebp - 0x18], 0x16
jmp 0x10039420
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x1003941d
push eax
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_SetPropA]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x16
jne 0x10039407
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x2b
je 0x100393fe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x18
jl 0x100393da
mov dword [ebp - 0x2c], 0x9718
or edx, 0xffffffff
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x48], 0xa87ea82b
mov dword [ebp - 0x28], ebx
push 2
mov dword [ebp - 0x10], eax
pop esi
cmp dword [ebp - 0x10], esi
jge 0x1003946e
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x560], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1003945a
xor eax, eax
mov dword [ebp - 0x55c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x2c], 0x18
cmp dword [ebp - 0x2c], 0x15
jne 0x100395fa
push 4
pop edi
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x3c], 0xbebd
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xd
jg 0x100395e7
mov dword [ebp - 0x30], edi
mov ecx, 0x849fb95c
push 0xfffffffffffffffe
pop eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
sbb eax, eax
neg eax
cmp eax, 0xcdd1f665
sbb eax, eax
inc eax
mov dword [ebp - 0x48], eax
je 0x10039530
xor eax, eax
mov dword [ebp - 0x44], 0xa04c7c9a
mov dword [ebp - 0x18], eax
jmp 0x100394dd
dec dword [ebp - 0x30]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x1a
jge 0x100394d7
cmp dword [ebp - 0x44], eax
je 0x100394fc
mov dword [ebp - 0x38], 7
xor eax, eax
mov dword [ebp - 0x34], 0x98df1e58
mov dword [ebp - 0x10], eax
jmp 0x10039556
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc18], 0xfffffff8
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10039545
inc dword [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0x3c]
cmp eax, 0xc8c4
setle cl
cmp ecx, dword [ebp - 0x30]
jg 0x10039573
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x15
je 0x1003948b
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov dword [ebp - 0x410], edx
mov dword [ebp - 0x40c], edx
mov dword [ebp - 0x408], edx
mov dword [ebp - 0x404], edx
mov dword [ebp - 0x24], 0x56f9b2cf
push 3
mov dword [ebp - 0x10], 0xcadcda6a
pop ecx
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], eax
jl 0x100396f1
push 4
pop edi
push 0xfffffffffffffff6
pop eax
mov dword [ebp - 0x20], eax
xor edx, edx
mov dword [ebp - 0x28], 0xcfdef05d
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x54], 0xfffffffc
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x40c]
cmp ecx, eax
mov ecx, dword [ebp - 0x20]
setne dl
lea eax, [edx - 0x2739a7ea]
add ecx, eax
jne 0x10039670
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x40c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x410]
imul eax, dword [ebp - 0x20]
test eax, eax
je 0x10039692
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x410]
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x410]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x410]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], 0xfffffffb
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x404]
cmp ecx, eax
setg dl
sub edx, edi
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
xor eax, eax
mov dword [ebp - 0x54], eax
dec dword [ebp - 0x24]
jns 0x10039632
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadPriority]
or edx, 0xffffffff
push 3
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0x914d
mov dword [ebp - 0x50], 0x555b7cef
push 0xfffffffffffffff6
pop eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x44], 0x280bfe73
mov dword [ebp - 0x28], 0xe97312b9
mov dword [ebp - 0x34], 0x1e9a
mov dword [ebp - 0x54], 0xf2d8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ecx
jge 0x1003974f
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x294], 0x6de6eab3
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10039737
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ecx
jge 0x1003976f
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xb40], 0x1832d748
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10039757
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1003978b
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xc2c], edx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10039777
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x100397a1
cmp dword [ebp - 0x1c], ebx
jl 0x10039790