Function at 0x42e370
Capabilities:
Enumerate gui resources
Get disk information
Get file size
Log keystrokes via polling
Query or enumerate registry key
Read .ini file
Resume thread
Suspend thread

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2428
call fcn.004aa9c0
mov dword [ebp - 0x64], ecx
lea ecx, [ebp - 0x1cc]
mov dword [ebp - 0x10], 0x77c8748a
mov dword [ebp - 0x18], 0x9bd697e7
mov dword [ebp - 0x20], 0xf8d19c92
push 4
mov byte [ebp - 0x75], dl
call fcn.004147f5
mov dword [ebp - 0xc], 0xffffffff
xor eax, eax
mov dword [ebp - 0x1c], 1
mov dword [ebp - 4], eax
jmp 0x42e3d1
push dword [ebp - 4]
lea ecx, [ebp - 0x1cc]
call fcn.004148e3
mov dword [eax], 0xcde9e843
inc dword [ebp - 4]
cmp dword [ebp - 4], 4
jl 0x42e3ba
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 0x3e86f8c7
sete al
inc eax
je 0x42e3ff
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x42e401
xor ecx, ecx
inc ecx
mov eax, ecx
jmp 0x42e404
xor eax, eax
xor ecx, ecx
inc ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
push ebx
push esi
mov dword [ebp - 0x20], eax
xor eax, eax
push edi
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
push 2
pop esi
jg 0x42e6cf
xor ebx, ebx
jmp 0x42e42f
xor ecx, ecx
inc ecx
mov dword [ebp - 0x58], ecx
lea ecx, [ebp - 0x1cc]
mov dword [ebp - 0x30], 0x503ecef3
push dword [ebp - 0x18]
call fcn.004148e3
cmp dword [eax], ebx
je 0x42e464
push dword [ebp - 0x18]
lea ecx, [ebp - 0x1cc]
call fcn.004148e3
cmp dword [eax], ebx
je 0x42e464
xor eax, eax
lea esi, [eax + 1]
jmp 0x42e468
xor eax, eax
mov esi, eax
push 8
pop eax
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x1cc]
mov eax, dword [ebp - 0x20]
push dword [ebp - 0x18]
call fcn.004148e3
push dword [ebp - 0x18]
xor ebx, ebx
lea ecx, [ebp - 0x1cc]
cmp esi, dword [eax]
setl bl
call fcn.004148e3
push 3
lea ecx, [ebp - 0x1cc]
mov eax, dword [eax]
add eax, ebx
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
call fcn.004148e3
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x1cc]
xor eax, eax
push eax
call fcn.004148e3
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x1cc]
push dword [ebp - 0x18]
call fcn.004148e3
push 3
lea ecx, [ebp - 0x1cc]
call fcn.004148e3
push dword [ebp - 0x18]
lea ecx, [ebp - 0x1cc]
call fcn.004148e3
lea ecx, [ebp - 0x1cc]
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
push dword [ebp - 0x18]
call fcn.004148e3
mov edx, dword [ebp - 0xc]
sub edx, 0x197cbb40
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp dword [eax], edx
sete cl
sub ecx, 0xa
je 0x42e62b
push 2
pop ebx
push ebx
lea ecx, [ebp - 0xd7c]
call fcn.004147f5
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ebx
jge 0x42e555
push dword [ebp - 4]
lea ecx, [ebp - 0xd7c]
call fcn.004148e3
mov dword [eax], 0x8b9db5df
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x42e537
xor eax, eax
mov dword [ebp - 0x58], eax
jmp 0x42e573
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42e570
push eax
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_SetWindowRgn]
xor eax, eax
inc dword [ebp - 0x58]
cmp dword [ebp - 0x58], ebx
je 0x42e55a
mov dword [ebp - 0xc], 0xffffffe4
jmp 0x42e614
mov dword [ebp - 0x30], 0x53cf54ce
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x20], 0x19
cmp dword [ebp - 0x20], 0x1c
jg 0x42e611
mov dword [ebp - 0x34], 0x456a9e5f
lea ecx, [ebp - 0x1cc]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
push dword [ebp - 0x18]
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0xd7c]
inc eax
push eax
call fcn.004148e3
mov edx, dword [ebp - 0x58]
xor ecx, ecx
add edx, 0x9033
imul edx, dword [ebp - 0x34]
cmp edx, dword [eax]
setne cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xd7c]
push eax
call fcn.004148e3
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x1cc]
push ebx
sub esi, dword [eax]
call fcn.004148e3
mov dword [eax], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x1c
jle 0x42e59b
xor eax, eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x15
je 0x42e584
lea ecx, [ebp - 0xd7c]
call fcn.004148c7
jmp 0x42e698
xor eax, eax
mov dword [ebp - 0x34], 0x66802143
inc eax
mov dword [ebp - 0x50], eax
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x42e64a
push eax
push eax
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
mov eax, dword [ebp - 0x58]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x58]
cmp eax, 0xe516
setge cl
add ecx, dword [ebp - 0x58]
je 0x42e668
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x1cc]
mov eax, dword [ebp - 0x58]
mov esi, dword [ebp - 0x20]
push dword [ebp - 0x18]
call fcn.004148e3
xor ecx, ecx
mov dword [eax], esi
mov dword [ebp - 0x34], esi
mov edx, dword [ebp - 0x50]
imul edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
cmp edx, eax
setge cl
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x58], 3
xor eax, eax
xor ebx, ebx
cmp dword [ebp - 0x58], eax
jl 0x42e6bf
push dword [ebp - 0x18]
lea ecx, [ebp - 0x1cc]
call fcn.004148e3
cmp dword [eax], ebx
jne 0x42e6bf
dec dword [ebp - 0x58]
jns 0x42e6a8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jle 0x42e42c
push 2
pop esi
lea ecx, [ebp - 0x1cc]
call fcn.004148c7
mov dword [ebp - 0xc], 0xc6a53d06
xor eax, eax
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x24], 0x8900fdb6
cmp dword [ebp - 0xc], eax
je 0x42e702
mov dword [ebp - 0x34], 0x251d69f4
dec dword [ebp - 0x34]
jmp 0x42e746
mov dword [ebp - 0x1c], 3
mov dword [ebp - 0xc], eax
jmp 0x42e716
cmp dword [ebp - 0xc], eax
jne 0x42e721
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xfffffffd
jge 0x42e70e
cmp dword [ebp - 0xc], eax
je 0x42e730
xor ecx, ecx
inc ecx
cmp dword [ebp - 0x1c], ecx
jl 0x42e730
xor eax, eax
lea edx, [eax + 1]
jmp 0x42e732
mov edx, eax
mov eax, dword [ebp - 0xc]
xor ecx, ecx
cmp edx, eax
sete cl
imul ecx, dword [ebp - 0xc]
inc ecx
xor eax, eax
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42e75c
push 0x18a0
call dword [sym.imp.USER32.dll_GetKeyState]
xor eax, eax
xor ebx, ebx
inc ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x28], 0xd21f1eb3
mov dword [ebp - 4], 0x799333c7
mov dword [ebp - 0x14], 0xfffffffc
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x24], 0x1e3c
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 4
jge 0x42e7b5
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x1c74], 0x7f39cee2
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 4
jl 0x42e79c
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x42e7cb
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x1148], 0xfffffff7
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x42e7ba
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x42e80d
mov eax, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 4]
cmp eax, ecx
setl dl
xor eax, eax
cmp edx, 0xffffffff
setle al
mov dword [ebp - 0x34], eax
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x42e80b
xor ebx, ebx
lea ecx, [eax + 1]
inc ebx
jmp 0x42e80f
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x10]
imul eax, ecx
test eax, eax
je 0x42e824
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x42e826
mov eax, ebx
jmp 0x42e826
xor eax, eax
mov dword [ebp - 0x28], 0xffff
xor edx, edx
mov ecx, dword [ebp - 0x10]
add ecx, eax
mov eax, dword [ebp - 0x1c74]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
imul eax, ecx, 0x900b
mov dword [ebp - 0x1144], ecx
test eax, eax
mov eax, dword [ebp - 0x28]
setns dl
xor ecx, ecx
cmp eax, edx
setl cl
xor eax, eax
cmp ecx, dword [ebp - 0x10]
jle 0x42e87a
cmp dword [ebp - 4], eax
je 0x42e87a
cmp dword [ebp - 0x1144], eax
jne 0x42e882
cmp dword [ebp - 0x1c74], eax
je 0x42e885
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1144]
xor ecx, ecx
cmp eax, 0xe149
setl cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 0xffffffe9
cmp dword [ebp - 0x3c], 0xfffffff9
jne 0x42e965
xor eax, eax
mov dword [ebp - 0x2c], 0x12d49381
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 9
jge 0x42e958
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x24], ebx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42e8dd
call edi
push eax
call dword [sym.imp.USER32.dll_IsZoomed]
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov eax, dword [ebp - 0x14]
cmp eax, ebx
mov eax, dword [ebp - 0x2c]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 4]
setg cl
sub eax, ecx
cmp eax, dword [ebp - 0x1c6c]
jg 0x42e90e
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x42e92e
push 0x737
call dword [sym.imp.USER32.dll_GetSysColor]
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42e948
push eax
push 0x17d4
push 0xe35
call dword [sym.imp.GDI32.dll_CreatePen]
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 9
push 0
pop eax
jl 0x42e8c5
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xfffffff9
je 0x42e8b1
mov dword [ebp - 0x40], 0x77c8748a
xor eax, eax
mov dword [ebp - 0x20], 0x21c3a23
mov dword [ebp - 0x34], 0xc9fe9a5a
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 3
jge 0x42e99e
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x1fb4], 0x7b30498
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x42e985
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], esi
jge 0x42e9be
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x1c2c], 0
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x42e9a6
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x42e9f5
mov ecx, dword [ebp - 0x20]
xor edx, edx
add ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp eax, edx
setne cl
mov dword [ebp - 0x1fac], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
dec edx
neg edx
push 3
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setne cl
imul eax, ecx, 0x4ccb
xor ecx, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
cmp eax, 0x5f5c9b8d
setge cl
xor eax, eax
mov dword [ebp - 0x1c28], ecx
lea ecx, [ebp - 0x18c0]
mov dword [ebp - 0x58], 0x9bd697e7
mov dword [ebp - 0x28], 0xe1ca2961
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x24], 6
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x34], 0x7c264f89
mov dword [ebp - 0x30], 0x3b6ac891
mov dword [ebp - 0x24], 0xab7a3ebe
call fcn.004147f5
xor eax, eax
lea ecx, [ebp - 0x14a8]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x50], 0xaf14
mov dword [ebp - 0x3c], eax
push ebx
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], esi
jge 0x42eaa0
mov eax, dword [ebp - 0x58]
mov dword [ebp + eax*4 - 0xc50], ebx
inc dword [ebp - 0x58]
cmp dword [ebp - 0x58], esi
jl 0x42ea8c
xor eax, eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 3
jge 0x42eac8
push dword [ebp - 0x58]
lea ecx, [ebp - 0x18c0]
call fcn.004148e3
mov dword [eax], 0x3b8b2ef5
inc dword [ebp - 0x58]
cmp dword [ebp - 0x58], 3
jl 0x42eaa9
xor eax, eax
mov dword [ebp - 0x58], eax
jmp 0x42eae1
push dword [ebp - 0x58]
lea ecx, [ebp - 0x14a8]
call fcn.004148e3
and dword [eax], 0
inc dword [ebp - 0x58]
xor eax, eax
inc eax
cmp dword [ebp - 0x58], eax
jl 0x42eacd
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
inc eax
imul eax, eax, 5
sub eax, 5
jne 0x42eb05
cmp dword [ebp - 0x28], eax
jne 0x42eb05
mov edx, eax
jmp 0x42eb0a
xor eax, eax
lea edx, [eax + 1]
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
push 0xfffffffffffffffb
setge cl
xor edx, edx
add eax, ecx
imul ecx, eax, 0xffff6797
mov eax, dword [ebp - 0x28]
cmp eax, ecx
setg dl
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 9
sbb eax, eax
xor ebx, ebx
inc eax
inc ebx
imul eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], eax
pop eax
jl 0x42ec68
mov dword [ebp - 0x24], 0xb597857
lea ecx, [ebp - 0x1ad4]
mov dword [ebp - 0x24], 0x6e40
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x24], 6
mov dword [ebp - 0x24], 0xb6ce1a81
mov dword [ebp - 0x24], 0xc90e69cd
mov dword [ebp - 0x24], 0x2955f1bb
mov dword [ebp - 0x24], 0xa9e1a0e1
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0x243a5d8d
mov dword [ebp - 0x24], 0xab83de37
mov dword [ebp - 0x24], 0x6a25a955
mov dword [ebp - 0x24], 0xffffffff
push esi
call fcn.004147f5
mov dword [ebp - 0x24], 0xffffffff
xor eax, eax
mov dword [ebp - 0x2c], 0xf85a0455
mov dword [ebp - 0x30], 9
mov dword [ebp - 4], eax
cmp dword [ebp - 4], esi
jge 0x42ebf8
push dword [ebp - 4]
lea ecx, [ebp - 0x1ad4]
call fcn.004148e3
mov dword [eax], 0x94bf7d69
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x42ebda
xor eax, eax
dec dword [ebp - 0x34]
cmp dword [ebp - 0x1c], eax
je 0x42ec09
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x3c]
lea ecx, [ebp - 0x14a8]
xor eax, eax
push eax
call fcn.004148e3
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0xc50]
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0xc50]
mov dword [ebp - 0x30], 0x46b4
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc50], ecx
lea ecx, [ebp - 0x1ad4]
call fcn.004148c7
dec dword [ebp - 0x10]
push 0xfffffffffffffffb
pop eax
jns 0x42eb4e
lea ecx, [ebp - 0x14a8]
call fcn.004148c7
lea ecx, [ebp - 0x18c0]
call fcn.004148c7
mov dword [ebp - 0x38], 0xf8d19c92
lea ecx, [ebp - 0x18d8]
mov dword [ebp - 0xc], 0x99841b3c
mov dword [ebp - 0x10], 0x2e889ec0
mov dword [ebp - 0x38], 0x888c5540
mov dword [ebp - 0x28], 0x8b4b72b4
push 3
call fcn.004147f5
push 3
lea ecx, [ebp - 0x1cb4]
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 3
jge 0x42ecec
push dword [ebp - 0xc]
lea ecx, [ebp - 0x18d8]
call fcn.004148e3
mov dword [eax], 0x4688d239
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x42eccd
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 3
jge 0x42ed14
push dword [ebp - 0xc]
lea ecx, [ebp - 0x1cb4]
call fcn.004148e3
mov dword [eax], 0x51abe719
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x42ecf5
xor eax, eax
mov dword [ebp - 0xc], 0xfffffff7
jmp 0x42ed44
mov dword [ebp - 0x1c], 0xf7fd
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x1c]
sub ecx, esi
neg ecx
push 0
sbb ecx, ecx
inc ecx
sub eax, ecx
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x30], eax
inc dword [ebp - 0xc]
pop eax
cmp dword [ebp - 0xc], 4
jne 0x42ed1d
mov eax, dword [ebp - 0xc]
xor edx, edx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
inc ecx
cmp ecx, eax
setg dl
xor ecx, ecx
sub edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0xc]
cmp edx, eax
setne cl
sub ecx, dword [ebp - 0xc]
neg ecx
sbb ecx, ecx
xor edx, edx
add ecx, 0xf962
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
cmp ecx, eax
setl dl
xor eax, eax
cmp edx, 0xabbf
setne al
cmp eax, 0x70ce
jg 0x42ede1
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x42edda
mov dword [ebp - 0x28], eax
jmp 0x42edd2
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42edcf
push 0x877
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_RestoreDC]
xor eax, eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], esi
jle 0x42edaf
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jle 0x42edaa
jmp 0x42ee32
xor eax, eax
inc eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0x75f98a97
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x38], 0xffffffe4
cmp dword [ebp - 0x38], 0x16
jg 0x42ee2f
mov dword [ebp - 0x24], 0xe87122a2
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xfffffffd
mov dword [ebp - 0x24], 0x17c08a59
mov dword [ebp - 0x24], 0xffffffff
dec dword [ebp - 0x34]
inc dword [ebp - 0x38]
jmp 0x42ee02
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x1cb4]
call fcn.004148c7
lea ecx, [ebp - 0x18d8]
call fcn.004148c7
push 4
lea ecx, [ebp - 0x1b4]
call fcn.004147f5
push esi
lea ecx, [ebp - 0x124]
call fcn.004147f5
push ebx
lea ecx, [ebp - 0x498]
call fcn.004147f5
push 3
lea ecx, [ebp - 0x1160]
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x1c], 0x90cc824f
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x42eea9
push dword [ebp - 0x18]
lea ecx, [ebp - 0x124]
call fcn.004148e3
mov dword [eax], 0xea388845
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x42ee8b
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x42eed5
push dword [ebp - 0x18]
lea ecx, [ebp - 0x498]
call fcn.004148e3
mov dword [eax], 0xcf0adc10
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x42eeb1
xor ebx, ebx
xor eax, eax
inc ebx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x42eefd
push dword [ebp - 0x18]
lea ecx, [ebp - 0x1160]
call fcn.004148e3
mov dword [eax], 0x4e19c781
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x42eede
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x42ef19
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xa34], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x42ef05
xor eax, eax
push eax
lea ecx, [ebp - 0x124]
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x124]
push eax
call fcn.004148e3
push ebx
lea ecx, [ebp - 0x124]
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x124]
push eax
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x124]
push eax
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x124]
push eax
call fcn.004148e3
lea ecx, [ebp - 0x124]
mov esi, dword [eax]
xor eax, eax
push eax
dec esi
call fcn.004148e3
xor ecx, ecx
cmp esi, dword [eax]
setg cl
cmp ecx, 0x80ae
je 0x42ef97
xor eax, eax
lea ecx, [ebp - 0x124]
push eax
call fcn.004148e3
push ebx
lea ecx, [ebp - 0x124]
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x124]
push eax
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x124]
push eax
call fcn.004148e3
cmp dword [eax], ebx
jg 0x42efdc
xor eax, eax
lea ecx, [ebp - 0x124]
push eax
call fcn.004148e3
cmp dword [eax], 0
jne 0x42efdc
xor eax, eax
mov esi, eax
jmp 0x42efe4
xor eax, eax
xor ebx, ebx
inc ebx
lea esi, [eax + 1]
push eax
lea ecx, [ebp - 0x498]
call fcn.004148e3
lea ecx, [ebp - 0x498]
mov dword [eax], esi
xor eax, eax
push eax
call fcn.004148e3
cmp dword [eax], 0
je 0x42f257
mov dword [ebp - 0x34], 2
xor eax, eax
mov dword [ebp - 0x14], 0xfffffffd
mov dword [ebp - 0x2c], 9
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 3
jge 0x42f049
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x30c], 0x35db
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x42f030
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 3
jge 0x42f06b
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x1aec], 0xf59fb917
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x42f052
xor eax, eax
cmp dword [ebp - 0x34], eax
jne 0x42f090
push eax
lea ecx, [ebp - 0x498]
call fcn.004148e3
mov eax, dword [ebp - 0x308]
lea ecx, [ebp - 0x124]
xor eax, eax
push eax
call fcn.004148e3
mov eax, dword [ebp - 0x308]
lea ecx, [ebp - 0x124]
mov eax, dword [ebp - 0x308]
push ebx
call fcn.004148e3
mov eax, dword [ebp - 0x308]
lea ecx, [ebp - 0x498]
xor eax, eax
push eax
call fcn.004148e3
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x42f0ef
mov dword [ebp - 0x1c], 0xbc59458d
lea ecx, [ebp - 0x498]
mov dword [ebp - 0x14], 0x9a46bb21
mov eax, dword [ebp - 0x14]
xor eax, eax
push eax
call fcn.004148e3
mov dword [eax], ebx
xor eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x42f261
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x1160]
push eax
call fcn.004148e3
mov eax, dword [ebp - 4]
lea ecx, [ebp - 0x498]
mov eax, dword [ebp - 0x308]
mov eax, dword [ebp - 0x14]
xor eax, eax
push eax
call fcn.004148e3
mov esi, dword [ebp - 0x308]
lea ecx, [ebp - 0x498]
mov eax, dword [ebp - 0x30c]
neg esi
sbb esi, esi
neg eax
mov dword [ebp - 0x2c], eax
neg esi
xor eax, eax
push eax
call fcn.004148e3
push ebx
lea ecx, [ebp - 0x124]
mov dword [eax], esi
call fcn.004148e3
xor ecx, ecx
cmp esi, dword [eax]
mov eax, dword [ebp - 0x30c]
setl cl
xor ebx, ebx
cmp eax, ecx
lea ecx, [ebp - 0x124]
setle bl
xor eax, eax
push eax
call fcn.004148e3
mov esi, dword [ebp - 4]
mov ecx, dword [ebp - 0x2c]
imul esi, ebx
sub esi, 0x6fc4
neg esi
sbb esi, esi
xor edx, edx
inc esi
cmp ecx, esi
setle dl
sub edx, dword [ebp - 0x308]
neg edx
sbb edx, edx
inc edx
cmp edx, dword [eax]
jle 0x42f1a2
xor eax, eax
cmp dword [ebp - 4], eax
jne 0x42f1a2
mov edx, eax
jmp 0x42f1a7
xor eax, eax
lea edx, [eax + 1]
mov eax, dword [ebp - 4]
xor ecx, ecx
cmp edx, eax
setl cl
sub ecx, dword [ebp - 0x14]
je 0x42f1dc
mov dword [ebp - 0x1c], 0xa66b3e62
mov eax, dword [ebp - 0x308]
mov eax, dword [ebp - 0x1ae8]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
dec dword [ebp - 0xa30]
jmp 0x42f261
xor eax, eax
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x42f1ef
call dword [sym.imp.KERNEL32.dll_SwitchToThread]
mov eax, dword [ebp - 0x14]
xor edx, edx
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x308]
setg dl
xor ecx, ecx
cmp eax, edx
setle cl
xor eax, eax
cmp ecx, 0x69f207b6
setg al
mov dword [ebp - 0x2c], eax
xor eax, eax
cmp dword [ebp - 0x2c], 0x92e7
jne 0x42f232
cmp dword [ebp - 0xa34], eax
je 0x42f232
lea ecx, [eax + 1]
jmp 0x42f234
mov ecx, eax
mov eax, dword [ebp - 0x14]
sub eax, ecx
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp ecx, eax
sbb eax, eax
neg eax
mov dword [ebp - 0x1ae8], eax
mov dword [ebp - 0x30], eax
jmp 0x42f261
mov dword [ebp - 0x34], 0xc1df
inc dword [ebp - 0x34]
lea ecx, [ebp - 0x1160]
call fcn.004148c7
lea ecx, [ebp - 0x498]
call fcn.004148c7
lea ecx, [ebp - 0x124]
call fcn.004148c7
mov dword [ebp - 0x3c], 0xffffffff
xor eax, eax
mov dword [ebp - 0x20], 0xfffffff9
mov dword [ebp - 0x10], 0x8ec32687
mov dword [ebp - 0x34], 0xfffffffa
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xfffffffc
je 0x42f3b0
xor ebx, ebx
inc ebx
mov dword [ebp - 0x28], 0x9ea41449
lea ecx, [ebp - 0xf50]
push ebx
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], ebx
jge 0x42f2f1
push dword [ebp - 0xc]
lea ecx, [ebp - 0xf50]
call fcn.004148e3
mov dword [eax], 0x773672d7
xor eax, eax
inc dword [ebp - 0xc]
inc eax
cmp dword [ebp - 0xc], eax
jl 0x42f2d0
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x42f307
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x2044], 0x8cd54673
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x42f2f6
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0xf50]
xor eax, eax
push eax
call fcn.004148e3
mov ecx, dword [ebp - 0x28]
xor edx, edx
cmp dword [eax], ecx
setle dl
cmp edx, 0xd2d1a4e6
ja 0x42f33b
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x42f33b
mov edx, eax
jmp 0x42f340
xor eax, eax
lea edx, [eax + 1]
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, edx
setl cl
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xf50]
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], eax
xor eax, eax
push eax
call fcn.004148e3
mov ecx, dword [ebp - 0x28]
mov eax, dword [eax]
add eax, 0x71b79515
sub ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, dword [ebp - 0x28]
jg 0x42f38d
cmp dword [ebp - 0x20], eax
je 0x42f38d
cmp dword [ebp - 0x28], eax
je 0x42f38d
xor ebx, ebx
inc ebx
mov eax, ebx
jmp 0x42f390
xor ebx, ebx
inc ebx
mov dword [ebp - 0x203c], eax
lea ecx, [ebp - 0xf50]
call fcn.004148c7
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffffc
jne 0x42f2b0
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xffffffe9
jne 0x42f429
xor ecx, ecx
inc ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x10], 0x1c
cmp dword [ebp - 0x10], eax
jl 0x42f3ef
mov dword [ebp - 0x1c], 0x593f6a08
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42f3e1
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
dec dword [ebp - 0x10]
push 0
pop eax
jns 0x42f3cb
mov eax, dword [ebp - 0x28]
xor eax, eax
inc eax
cmp dword [ebp - 0x28], eax
je 0x42f40d
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setne dl
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp eax, ecx
push 0
setg dl
mov dword [ebp - 0x28], edx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffe9
pop eax
je 0x42f3b9
xor ebx, ebx
or ecx, 0xffffffff
inc ebx
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x87c], ecx
mov dword [ebp - 0x878], ecx
mov dword [ebp - 0x874], ecx
mov dword [ebp - 0x870], ecx
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ebx
jge 0x42f470
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x9e0], 0x4a8c6a53
xor eax, eax
inc dword [ebp - 4]
inc eax
cmp dword [ebp - 4], eax
jl 0x42f452
xor ebx, ebx
xor eax, eax
inc ebx
mov dword [ebp - 0x874], eax
cmp dword [ebp - 0x874], eax
jl 0x42f498
mov eax, dword [ebp - 0x874]
cmp dword [ebp + eax*4 - 0x9e0], 0
jne 0x42f496
dec dword [ebp - 0x874]
jns 0x42f47e
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42f4ad
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x1c], 9
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 3
jge 0x42f4dc
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xf68], 0x56fe18bd
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x42f4c3
xor eax, eax
mov dword [ebp - 0x18], 0x85f70ad6
cmp dword [ebp - 0x18], eax
je 0x42f4ee
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xf68]
mov ecx, dword [ebp - 0xc]
sub ecx, eax
jne 0x42f533
xor eax, eax
cmp dword [ebp - 0xf68], eax
jne 0x42f533
mov ecx, eax
jmp 0x42f53b
xor eax, eax
xor ebx, ebx
inc ebx
lea ecx, [eax + 1]
mov eax, dword [ebp - 0xf68]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xf68]
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, 0xf9e8
setl al
mov dword [ebp - 0x18], eax
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x42f595
mov dword [ebp - 0x34], 0x25036ffe
mov dword [ebp - 0x1c], 0x55d5
mov dword [ebp - 0x18], 0xe66b6c7e
cmp dword [ebp - 0x18], eax
jne 0x42f58e
mov eax, dword [ebp - 0x34]
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x42f590
mov eax, ebx
mov dword [ebp - 0x1c], eax
jmp 0x42f5f5
mov dword [ebp - 0x34], 0xd7fccea5
mov dword [ebp - 0xc], eax
jmp 0x42f5d9
mov dword [ebp - 0x18], eax
jmp 0x42f5d0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x1d
jle 0x42f5cd
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp eax, 0xb2d
setne cl
mov dword [ebp - 0x1c], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x1d
jg 0x42f5b2
xor eax, eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffee
jge 0x42f5a6
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 6
je 0x42f5a1
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
neg ecx
sbb ecx, ecx
add eax, 0xfffffffc
inc ecx
add eax, ecx
imul eax, eax, 3
mov dword [ebp - 0xc], eax
xor eax, eax
push 4
mov dword [ebp - 4], eax
pop esi
cmp dword [ebp - 4], esi
jge 0x42f620
push dword [ebp - 4]
lea ecx, [ebp - 0x1b4]
call fcn.004148e3
mov dword [eax], 0xcde9e843
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x42f602
xor eax, eax
mov dword [ebp - 0x14], 0xea5d6c05
mov dword [ebp - 0x14], 0x10
jmp 0x42f65b
mov dword [ebp - 4], eax
cmp dword [ebp - 4], esi
jge 0x42f650
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x2258], 0xb4074dd
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x42f638
xor eax, eax
cmp dword [ebp - 0x2258], eax
jne 0x42f660
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jg 0x42f630
inc dword [ebp - 0x40]
mov ecx, dword [ebp - 0x40]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 0x3e86f8c7
sete al
inc eax
je 0x42f685
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x42f687
mov eax, ebx
jmp 0x42f687
xor eax, eax
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0xc], 0xc6a53d06
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x24], 0x8900fdb6
cmp dword [ebp - 0xc], eax
je 0x42f6b8
mov dword [ebp - 0x34], 0x251d69f4
dec dword [ebp - 0x34]
jmp 0x42f6fc
mov dword [ebp - 0x1c], 3
mov dword [ebp - 0xc], eax
jmp 0x42f6cc
cmp dword [ebp - 0xc], eax
jne 0x42f6d7
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xfffffffd
jge 0x42f6c4
cmp dword [ebp - 0xc], eax
je 0x42f6e6
cmp dword [ebp - 0x1c], ebx
jl 0x42f6e6
xor eax, eax
xor ebx, ebx
inc ebx
lea edx, [eax + 1]
jmp 0x42f6e8
mov edx, eax
mov eax, dword [ebp - 0xc]
xor ecx, ecx
cmp edx, eax
sete cl
imul ecx, dword [ebp - 0xc]
inc ecx
xor eax, eax
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42f712
push 0x18a0
call dword [sym.imp.USER32.dll_GetKeyState]
xor eax, eax
mov dword [ebp - 0x58], eax
mov esi, 0xffff7c62
cmp dword [ebp - 0x58], 3
push 0xfffffffffffffff8
pop edx
jg 0x4319b9
jmp 0x42f72e
push 4
pop ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x24], 0xc2db2212
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x24], 0xaa39ed08
mov dword [ebp - 0x24], 0x509978f3
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x24], 0x653d4237
mov dword [ebp - 0x24], 0x5cc25bfc
mov dword [ebp - 0x24], 0x27603859
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xfffffff9
mov dword [ebp - 0x24], 0x3267e6aa
mov dword [ebp - 0x24], 0x647f1a96
mov dword [ebp - 0x24], 0x97515801
mov dword [ebp - 0x24], 9
push ecx
mov dword [ebp - 0x24], 0x13e19f23
lea ecx, [ebp - 0x1be0]
mov dword [ebp - 0x24], 0xe71b35d5
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 4
jge 0x42f7d5
push dword [ebp - 0xc]
lea ecx, [ebp - 0x1be0]
call fcn.004148e3
and dword [eax], 0
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 4
jl 0x42f7b9
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x42f7eb
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x18f0], 4
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x42f7da
inc dword [ebp - 0x18ec]
lea ecx, [ebp - 0x1be0]
call fcn.004148c7
mov dword [ebp - 0x44], ebx
xor eax, eax
mov dword [ebp - 0x14], 0xfffffffe
mov dword [ebp - 0x1c], 0x9d73ae4c
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], 0xfffffff7
mov dword [ebp - 0x34], 0xfffffff6
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 4], eax
jmp 0x42f840
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x7c], 0xfffd
inc dword [ebp - 4]
xor eax, eax
inc eax
cmp dword [ebp - 4], eax
jl 0x42f832
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0x7c]
jg 0x42f85c
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x7c]
xor ebx, ebx
mov eax, dword [ebp - 0x7c]
add ecx, 5
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setle bl
sub ebx, 0x62a4
neg ebx
sbb ebx, ebx
xor edx, edx
inc ebx
sub ebx, eax
mov eax, dword [ebp - 0x7c]
cmp ebx, 0x2a04f777
setge dl
xor ecx, ecx
cmp eax, edx
setne cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x30]
imul eax, dword [ebp - 0x14]
imul eax, eax, 3
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
sub edx, 0x71cc
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
xor ebx, ebx
mov dword [ebp - 0x1c], ecx
inc ebx
mov dword [ebp - 0x28], 0x503ecef3
lea ecx, [ebp - 0xb64]
mov dword [ebp - 4], 0xb0647dc4
push ebx
call fcn.004147f5
mov dword [ebp - 0x1c], 0xcff26af9
xor eax, eax
mov dword [ebp - 0x34], 0xd3ed23c5
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x42f924
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x17e8], 0xfff6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x42f90b
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x42f94d
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb64]
call fcn.004148e3
mov dword [eax], 0x5132d7af
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x42f92c
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x42f96f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1574], 0x813bf58a
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x42f956
xor eax, eax
cmp dword [ebp - 4], eax
jne 0x42f998
mov dword [ebp - 0x17e4], 0xfffffffd
mov ecx, esi
cmp dword [ebp - 4], 0x90611bc3
sbb eax, eax
neg eax
imul eax, eax, 9
sub ecx, eax
jne 0x42f998
xor eax, eax
mov esi, eax
jmp 0x42f99d
xor eax, eax
lea esi, [eax + 1]
push eax
lea ecx, [ebp - 0xb64]
call fcn.004148e3
mov dword [eax], esi
xor eax, eax
cmp dword [ebp - 4], eax
je 0x42f9ca
push eax
lea ecx, [ebp - 0xb64]
call fcn.004148e3
cmp dword [eax], 0
je 0x42f9c8
xor eax, eax
inc eax
jmp 0x42f9ca
xor eax, eax
cmp eax, dword [ebp - 0x156c]
jg 0x42f9e0
xor eax, eax
cmp dword [ebp - 0x1574], eax
jne 0x42f9e0
mov ecx, eax
jmp 0x42f9e5
xor eax, eax
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x1570]
sub ecx, eax
xor eax, eax
cmp ecx, 5
setl al
cmp eax, 0xff15cc7c
je 0x42fa15
xor eax, eax
lea ecx, [ebp - 0xb64]
push eax
call fcn.004148e3
cmp dword [eax], 0
jne 0x42fa15
xor eax, eax
mov edx, eax
jmp 0x42fa1a
xor eax, eax
lea edx, [eax + 1]
mov eax, dword [ebp - 4]
xor ecx, ecx
cmp eax, edx
setle cl
sub ecx, 0x271dbcab
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0xb64]
dec dword [ebp - 0x34]
call fcn.004148c7
push 2
pop esi
push esi
lea ecx, [ebp - 0x658]
call fcn.004147f5
xor ebx, ebx
lea ecx, [ebp - 0x1178]
inc ebx
push ebx
call fcn.004147f5
push 0xfffffffffffffff8
pop eax
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0xf80]
mov dword [ebp - 0x34], 0x9d60a221
xor eax, eax
mov dword [ebp - 0x2c], 0xe9734172
mov dword [ebp - 0x1c], 0xa8fe2430
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], 0xa85f88e1
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x50], 0xfffffff7
mov dword [ebp - 0x24], 0x7f05f432
mov dword [ebp - 0x24], 0x9b8fa48a
mov dword [ebp - 0x24], 0x2c39d5b6
mov dword [ebp - 0x34], 0xffffffff
push 4
call fcn.004147f5
push 8
pop eax
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 4], 0x83faa058
mov dword [ebp - 0x14], 0xc3cc8c9f
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x42faec
push dword [ebp - 0x18]
lea ecx, [ebp - 0x658]
call fcn.004148e3
and dword [eax], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x42fad1
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x42fb18
push dword [ebp - 0x18]
lea ecx, [ebp - 0x1178]
call fcn.004148e3
mov dword [eax], 0xe5a60d00
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x42faf4
xor ebx, ebx
xor eax, eax
inc ebx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x42fb40
push dword [ebp - 0x18]
lea ecx, [ebp - 0xf80]
call fcn.004148e3
mov dword [eax], 0xfffffffd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x42fb21
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x42fb56
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x21b8], 0x3be4655
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x42fb45
push ebx
lea ecx, [ebp - 0x658]
call fcn.004148e3
mov eax, dword [ebp - 4]
inc dword [ebp - 4]
test eax, eax
jne 0x42fba9
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0xf80]
push esi
call fcn.004148e3
mov ecx, dword [ebp - 0x34]
xor edx, edx
push 2
cmp dword [eax], ecx
lea ecx, [ebp - 0xf80]
setle dl
mov dword [ebp - 0x34], edx
mov esi, dword [ebp - 0x34]
call fcn.004148e3
mov dword [eax], esi
test esi, esi
jne 0x42fba9
xor eax, eax
mov edx, eax
jmp 0x42fbb1
xor eax, eax
xor ebx, ebx
inc ebx
lea edx, [eax + 1]
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp edx, eax
setge cl
sub ecx, dword [ebp - 0x50]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0x3bbb
setge al
mov dword [ebp - 0x34], eax
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x42fbdd
mov eax, dword [ebp - 4]
xor eax, eax
push eax
lea ecx, [ebp - 0x1178]
call fcn.004148e3
push ebx
lea ecx, [ebp - 0x658]
mov esi, eax
call fcn.004148e3
push ebx
mov ecx, dword [eax]
mov dword [esi], ecx
lea ecx, [ebp - 0x658]
call fcn.004148e3
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x2c]
sub edx, ecx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp dword [esi], edx
setle cl
xor ebx, ebx
cmp dword [eax], ecx
lea ecx, [ebp - 0x658]
setl bl
xor eax, eax
inc eax
push eax
call fcn.004148e3
xor ecx, ecx
cmp ebx, dword [eax]
sete cl
xor eax, eax
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x658]
push eax
call fcn.004148e3
lea ecx, [ebp - 0xf80]
mov eax, dword [eax]
add eax, dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
call fcn.004148c7
lea ecx, [ebp - 0x1178]
call fcn.004148c7
lea ecx, [ebp - 0x658]
call fcn.004148c7
push dword [ebp - 0x58]
lea ecx, [ebp - 0x1b4]
call fcn.004148e3
xor ebx, ebx
cmp dword [eax], ebx
je 0x42fc9f
push dword [ebp - 0x58]
lea ecx, [ebp - 0x1b4]
call fcn.004148e3
cmp dword [eax], ebx
je 0x42fc9f
xor eax, eax
lea esi, [eax + 1]
jmp 0x42fca3
xor eax, eax
mov esi, eax
push 8
pop eax
mov dword [ebp - 0x38], eax
lea ecx, [ebp - 0x1b4]
mov eax, dword [ebp - 0x38]
push dword [ebp - 0x58]
call fcn.004148e3
push dword [ebp - 0x58]
xor ebx, ebx
lea ecx, [ebp - 0x1b4]
cmp esi, dword [eax]
setl bl
call fcn.004148e3
push 3
lea ecx, [ebp - 0x1b4]
mov eax, dword [eax]
add eax, ebx
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
call fcn.004148e3
mov eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x1b4]
xor eax, eax
push eax
call fcn.004148e3
mov eax, dword [ebp - 0x38]
lea ecx, [ebp - 0x1b4]
push dword [ebp - 0x58]
call fcn.004148e3
push 3
lea ecx, [ebp - 0x1b4]
call fcn.004148e3
push dword [ebp - 0x58]
lea ecx, [ebp - 0x1b4]
call fcn.004148e3
lea ecx, [ebp - 0x1b4]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
push dword [ebp - 0x58]
call fcn.004148e3
mov edx, dword [ebp - 0x3c]
sub edx, 0x197cbb40
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp dword [eax], edx
sete cl
xor eax, eax
sub ecx, 0xa
je 0x430fd8
mov dword [ebp - 4], 0xa8eac8b
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x42fd87
push eax
push 0xa4e
push 0x1f59
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetDIBColorTable]
xor eax, eax
xor ebx, ebx
mov dword [ebp - 4], eax
inc ebx
jmp 0x42fd9e
mov dword [ebp - 0x1c], 0x7dd68876
cmp dword [ebp - 0x1c], eax
jne 0x42fda3
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jg 0x42fd8f
push 2
pop esi
push esi
lea ecx, [ebp - 0xfb0]
call fcn.004147f5
push esi
lea ecx, [ebp - 0x210]
call fcn.004147f5
mov dword [ebp - 0x10], 0xa017779a
xor eax, eax
mov dword [ebp - 0x34], 0x780eec29
mov dword [ebp - 0x1c], 0x81320f2d
mov dword [ebp - 4], eax
jmp 0x42fdeb
push dword [ebp - 4]
call fcn.004148e3
mov dword [eax], 0x1ad386cc
inc dword [ebp - 4]
lea ecx, [ebp - 0x210]
cmp dword [ebp - 4], esi
jl 0x42fdda
push ebx
call fcn.004148e3
mov esi, eax
lea ecx, [ebp - 0x210]
xor eax, eax
push eax
call fcn.004148e3
lea ecx, [ebp - 0x210]
mov edi, dword [eax]
xor eax, eax
imul edi, dword [esi]
push eax
call fcn.004148e3
xor ecx, ecx
cmp edi, dword [eax]
setge cl
cmp ecx, 0x61e
je 0x42fe46
push ebx
lea ecx, [ebp - 0x210]
call fcn.004148e3
cmp dword [eax], 0
jne 0x42fe46
xor eax, eax
mov esi, eax
inc eax
jmp 0x42fe4b
xor eax, eax
inc eax
mov esi, eax
push eax
lea ecx, [ebp - 0x210]
call fcn.004148e3
xor ebx, ebx
lea ecx, [ebp - 0x210]
cmp esi, dword [eax]
setg bl
xor edi, edi
inc edi
push edi
call fcn.004148e3
xor ecx, ecx
push edi
cmp dword [eax], ebx
mov eax, 0xfadacd7d
setle cl
cmp eax, ecx
lea ecx, [ebp - 0x210]
sbb esi, esi
neg esi
call fcn.004148e3
xor ebx, ebx
lea ecx, [ebp - 0x210]
push edi
cmp esi, dword [eax]
setg bl
call fcn.004148e3
xor ecx, ecx
push edi
cmp dword [eax], ebx
setne cl
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x210]
call fcn.004148e3
mov ecx, dword [ebp - 0x10]
push edi
imul ecx, dword [eax]
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x210]
call fcn.004148e3
mov ecx, dword [ebp - 0x34]
xor ebx, ebx
push edi
cmp dword [eax], ecx
lea ecx, [ebp - 0x210]
setl bl
call fcn.004148e3
xor ecx, ecx
cmp ebx, dword [eax]
setle cl
xor eax, eax
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x10], edi
cmp dword [ebp - 0x10], eax
jl 0x42ff22
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42ff04
call dword [sym.imp.USER32.dll_GetCaretBlinkTime]
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x42ff1d
push 0x1608
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VirtualQueryEx]
xor eax, eax
dec dword [ebp - 0x10]
jns 0x42fef3
lea ecx, [ebp - 0x210]
call fcn.004148c7
mov dword [ebp - 0x10], 0x8f8
xor eax, eax
mov dword [ebp - 0x3c], 0xc63c4078
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x1c], 0x6890c544
mov dword [ebp - 0xc], 0x28ed4a55
push 3
mov dword [ebp - 0x2c], eax
pop ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], eax
jmp 0x42ff6d
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xc5c], edi
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x42ff60
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x42ffae
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
inc dword [ebp - 0x2c]
cmp eax, ecx
jg 0x42ff8d
mov eax, edi
jmp 0x42ff8f
xor eax, eax
mov dword [ebp - 0xc], eax
xor ecx, ecx
mov edx, dword [ebp - 0xc54]
mov dword [ebp - 0xc58], edx
mov eax, dword [ebp - 0xc]
cmp eax, edx
setle cl
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x10]
mov ecx, edi
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
sub ecx, eax
mov eax, dword [ebp - 0x10]
cmp ecx, edi
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor ebx, ebx
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0xc58]
mov ecx, dword [ebp - 0xc54]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
setne bl
mov esi, dword [ebp - 0x2c]
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x14]
setg dl
xor ecx, ecx
sub esi, edx
cmp ebx, eax
setne cl
imul esi, ecx
cmp esi, dword [ebp - 0x3c]
jg 0x430017
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x430017
mov edx, eax
jmp 0x43001c
xor eax, eax
lea edx, [eax + 1]
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
push 2
setne cl
xor eax, eax
mov dword [ebp - 0xc54], ecx
mov dword [ebp - 4], 0x6a447d05
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp - 4], eax
pop esi
jmp 0x430055
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x244], 0x45cb
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x430044
mov eax, dword [ebp - 0x240]
mov eax, dword [ebp - 0x240]
mov dword [ebp - 4], 0xcc114ff6
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
dec eax
neg eax
sbb eax, eax
inc eax
cmp dword [ebp - 0x240], eax
jge 0x43008f
xor eax, eax
cmp dword [ebp - 0x244], eax
jne 0x43008f
mov ecx, eax
jmp 0x430094
xor eax, eax
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0xc]
setg dl
dec ecx
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, edx
setge al
add eax, dword [ebp - 0x244]
je 0x4300bc
mov eax, dword [ebp - 0x240]
mov eax, dword [ebp - 0x244]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x1c], eax
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], esi
jge 0x4300f6
push dword [ebp - 4]
lea ecx, [ebp - 0xfb0]
call fcn.004148e3
mov dword [eax], 0x8b9db5df
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x4300d8
xor eax, eax
or ecx, 0xffffffff
xor edi, edi
mov dword [ebp - 0x8bc], ecx
inc edi
mov dword [ebp - 0x8b8], ecx
mov dword [ebp - 0x8b4], ecx
mov dword [ebp - 0x8b0], ecx
mov dword [ebp - 4], eax
cmp dword [ebp - 4], edi
jge 0x43013a
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xbec], 0x4a8c6a53
xor eax, eax
inc dword [ebp - 4]
inc eax
cmp dword [ebp - 4], eax
jl 0x43011c
xor edi, edi
xor eax, eax
inc edi
mov dword [ebp - 0x8b4], eax
cmp dword [ebp - 0x8b4], eax
jl 0x430162
mov eax, dword [ebp - 0x8b4]
cmp dword [ebp + eax*4 - 0xbec], 0
jne 0x430160
dec dword [ebp - 0x8b4]
jns 0x430148
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x43017b
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], esi
jne 0x430751
push edi
lea ecx, [ebp - 0x4bc]
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x4301c1
push dword [ebp - 0x18]
lea ecx, [ebp - 0x4bc]
call fcn.004148e3
mov dword [eax], 0xfffffffb
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x43019d
xor edi, edi
xor eax, eax
inc edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x4301e1
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6f0], 0xd60a2215
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4301c9
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x430201
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6f8], 0xffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4301e9
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x430224
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xc04], 0xf8abff5e
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x430209
xor eax, eax
push eax
lea ecx, [ebp - 0x4bc]
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x4bc]
push eax
call fcn.004148e3
cmp dword [eax], 0
je 0x4302a2
inc dword [ebp - 0x6f4]
lea ecx, [ebp - 0x4bc]
mov esi, dword [ebp - 0x6f4]
xor eax, eax
push eax
call fcn.004148e3
lea ecx, [ebp - 0x4bc]
mov edi, dword [eax]
xor eax, eax
push eax
add edi, esi
call fcn.004148e3
cmp edi, dword [eax]
jle 0x430282
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0x4bc]
call fcn.004148e3
xor ecx, ecx
cmp esi, dword [eax]
setge cl
xor eax, eax
cmp ecx, 0xd9ba
mov ecx, 0xfffb
setle al
imul eax, eax, 0xb8ea
cmp ecx, eax
lea ecx, [ebp - 0x4bc]
sbb esi, esi
xor eax, eax
neg esi
sub esi, dword [ebp - 0x6f0]
push eax
mov dword [ebp - 0x6f0], esi
call fcn.004148e3
xor ebx, ebx
lea ecx, [ebp - 0x4bc]
cmp dword [eax], esi
setne bl
xor eax, eax
push eax
call fcn.004148e3
cmp ebx, dword [eax]
jne 0x430312
push 3
pop ebx
push ebx
lea ecx, [ebp - 0x4d4]
call fcn.004147f5
push edi
lea ecx, [ebp - 0x1190]
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x430794
push dword [ebp - 0x18]
lea ecx, [ebp - 0x4d4]
call fcn.004148e3
mov dword [eax], 0x177e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x430776
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x4307b6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x89c], 0xeef20fe6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x43079d
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x4307e2
push dword [ebp - 0x18]
lea ecx, [ebp - 0x1190]
call fcn.004148e3
mov dword [eax], 0xfffffffa
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x4307be
xor edi, edi
xor eax, eax
inc edi
mov dword [ebp - 0x898], esi
cmp dword [ebp - 0x898], eax
jl 0x430b9b
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x28], edi
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ebx
jge 0x43081e
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x208c], 0x1183d964
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x430806
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], eax
jl 0x430b8f
lea ecx, [ebp - 0x1190]
call fcn.004148c7
lea ecx, [ebp - 0x4d4]
call fcn.004148c7
mov dword [ebp - 0x3c], 0xffffffe4
cmp dword [ebp - 0x3c], 0x15
jne 0x430fc2
jmp 0x430bc7
lea ecx, [ebp - 0xfb0]
call fcn.004148c7
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
jmp 0x4317b7
mov dword [ebp - 0x34], 0x66802143
lea ecx, [ebp - 0x167c]
mov dword [ebp - 0x14], 0xac204e2
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x24], 0x3e95aad8
mov dword [ebp - 0x24], 0xf9f36173
push 4
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 4
jge 0x43102e
push dword [ebp - 0xc]
lea ecx, [ebp - 0x167c]
call fcn.004148e3
mov dword [eax], 0x52027495
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 4
jl 0x43100f
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x431044
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x5c0], 0xffffffff
inc dword [ebp - 0xc]
xor eax, eax
inc eax
cmp dword [ebp - 0xc], eax
jl 0x431033
xor ebx, ebx
mov dword [ebp - 0x14], 0xd
inc ebx
cmp dword [ebp - 0x14], 0xf
jle 0x4311dc
push 2
pop esi
push esi
lea ecx, [ebp - 0x75c]
call fcn.004147f5
push 0xfffffffffffffff8
pop eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x24], 0x889e022a
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0xb0a6d081
mov dword [ebp - 0x24], 0xbf5cbf79
mov dword [ebp - 0x24], 0xec51ac06
mov dword [ebp - 0x24], eax
xor eax, eax
mov dword [ebp - 0x24], 0x494fb389
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0x37f20bab
mov dword [ebp - 0x24], 0xd239f94a
mov dword [ebp - 0x24], 0x93131ec8
mov dword [ebp - 0x24], 0x2c8cdab0
mov dword [ebp - 0x24], 0xfffffffd
mov dword [ebp - 0x24], 0x218ad385
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], esi
jge 0x4310f6
push dword [ebp - 0xc]
lea ecx, [ebp - 0x75c]
call fcn.004148e3
mov dword [eax], ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x4310dc
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], esi
jge 0x431116
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x21e8], 9
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x4310fe
xor eax, eax
push eax
lea ecx, [ebp - 0x75c]
call fcn.004148e3
and dword [eax], 0
jmp 0x4311ad
mov dword [ebp - 0x24], 0x8ee4
lea ecx, [ebp - 0x1920]
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xba028ea3
mov dword [ebp - 0x24], 5
mov dword [ebp - 0x24], 0xe1e01b17
mov dword [ebp - 0x24], 0x86e3e45b
mov dword [ebp - 0x24], 0xcc9105fa
push esi
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x24], eax
mov dword [ebp - 4], eax
jmp 0x431187
push dword [ebp - 4]
call fcn.004148e3
mov dword [eax], 5
inc dword [ebp - 4]
lea ecx, [ebp - 0x1920]
cmp dword [ebp - 4], esi
jl 0x431176
inc dword [ebp - 0x5c0]
call fcn.004148c7
xor eax, eax
lea ecx, [ebp - 0x75c]
push eax
call fcn.004148e3
dec dword [eax]
xor eax, eax
lea ecx, [ebp - 0x75c]
push eax
call fcn.004148e3
cmp dword [eax], 0xffffffee
jl 0x43112a
lea ecx, [ebp - 0x75c]
call fcn.004148c7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xf
jg 0x431063
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x4311f4
push dword [ebp - 0x10]
call fcn.004148e3
mov dword [eax], 6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
lea ecx, [ebp - 0x167c]
jl 0x4311e3
call fcn.004148c7
mov dword [ebp - 0x2c], ebx
xor eax, eax
mov dword [ebp - 0x18], 0x9c17633e
mov dword [ebp - 0x34], 0x2bc4
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x30], 0x5dbc
mov dword [ebp - 0x1c], 3
cmp dword [ebp - 0x18], eax
jne 0x431251
mov edx, eax
xor ecx, ecx
mov eax, dword [ebp - 0x18]
cmp edx, eax
setle cl
add ecx, dword [ebp - 0x18]
je 0x431242
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x431255
cmp dword [ebp - 0x18], eax
je 0x431257
mov eax, ebx
jmp 0x431257
xor eax, eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], 0xfffffff4
jmp 0x4312ef
mov dword [ebp - 4], 0x8628405c
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x50], 0xeb60f9aa
cmp dword [ebp - 0x18], eax
je 0x4312df
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
jne 0x431297
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
xor edx, edx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp eax, 0x3c3
setne dl
sub edx, dword [ebp - 0x34]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
cmp edx, eax
setne cl
cmp ecx, 0xce00
jg 0x4312d0
mov eax, dword [ebp - 4]
cmp dword [ebp - 4], 0xfffe
jbe 0x4312dd
mov eax, ebx
jmp 0x4312df
xor eax, eax
inc eax
imul eax, dword [ebp - 0x18]
sub eax, 0x4c99
mov dword [ebp - 0x50], eax
inc dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x18], 0xa
je 0x431266
mov dword [ebp - 0x14], 0xa4a12b57
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ebx
jge 0x431328
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x18a0], 0x799ac789
xor eax, eax
inc dword [ebp - 4]
inc eax
cmp dword [ebp - 4], eax
jl 0x43130a
xor ebx, ebx
xor eax, eax
inc ebx
mov dword [ebp - 0x14], eax
jmp 0x431354
mov dword [ebp - 4], eax
mov dword [ebp - 4], eax
jmp 0x43134c
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x431349
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegLoadKeyW]
xor eax, eax
inc dword [ebp - 4]
cmp dword [ebp - 4], eax
jle 0x431335
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], eax
jle 0x43132d
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x431372
push eax
push 0xe61
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
xor eax, eax
mov byte [ebp - 5], al
lea ecx, [ebp - 0x3d8]
mov dword [ebp - 0xc], 0x56a3367f
push ebx
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 0x3a60813c
mov dword [ebp - 4], eax
jmp 0x4313a7
push dword [ebp - 4]
call fcn.004148e3
and dword [eax], 0
inc dword [ebp - 4]
xor eax, eax
lea ecx, [ebp - 0x3d8]
inc eax
cmp dword [ebp - 4], eax
jl 0x431399
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
xor eax, eax
push eax
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x3d8]
push eax
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x3d8]
push eax
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x3d8]
push eax
call fcn.004148e3
mov esi, eax
lea ecx, [ebp - 0x3d8]
xor eax, eax
push eax
call fcn.004148e3
mov esi, dword [esi]
lea ecx, [ebp - 0x3d8]
imul esi, dword [eax]
xor eax, eax
push eax
call fcn.004148e3
xor ecx, ecx
mov dword [eax], esi
mov eax, dword [ebp - 0xc]
cmp esi, eax
sete cl
xor edx, edx
imul ecx, dword [ebp - 0xc]
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xc]
cmp ecx, eax
mov eax, dword [ebp - 0xc]
setl dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0xc], ecx
lea ecx, [ebp - 0x3d8]
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x1c], eax
xor eax, eax
push eax
call fcn.004148e3
xor ecx, ecx
inc ecx
mov dword [eax], ecx
xor eax, eax
inc eax
cmp dword [ebp - 0x20], eax
jle 0x4314ab
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jl 0x431485
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x431480
push eax
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegGetKeySecurity]
xor eax, eax
dec dword [ebp - 0x20]
jns 0x43146b
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x4314cf
push eax
push 0xbce
push 0xf7a
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDIBColorTable]
jmp 0x4314cf
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x4314ca
push dword [ebp - 0x20]
lea ecx, [ebp - 0x3d8]
call fcn.004148e3
cmp dword [eax], 0
jne 0x4314cf
cmp dword [ebp - 0x20], eax
jle 0x4314b2
lea ecx, [ebp - 0x3d8]
call fcn.004148c7
cmp byte [ebp - 5], 0
je 0x43161c
lea ecx, [ebp - 0x1b4]
call fcn.004148c7
xor eax, eax
mov dword [ebp - 0x10], 0x642c70bb
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ebx
jge 0x4319ee
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xa00], ebx
xor eax, eax
inc dword [ebp - 4]
inc eax
push eax
pop ebx
cmp dword [ebp - 4], eax
jl 0x4319d5
xor eax, eax
mov dword [ebp - 0x10], eax
xor eax, eax
inc eax
cmp dword [ebp - 0x10], eax
jge 0x431a12
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xa00], 0
xor eax, eax
inc dword [ebp - 0x10]
inc eax
cmp dword [ebp - 0x10], eax
jl 0x4319f9
mov dword [ebp - 0x10], eax
lea ecx, [ebp - 0x7a4]
push eax
call fcn.004147f5
mov dword [ebp - 0x24], 0x44555950
xor eax, eax
mov dword [ebp - 0x24], 0xd9e2a8d3
xor ecx, ecx
mov dword [ebp - 0x24], 0xa5273358
inc ecx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], 0x67ee39f3
mov dword [ebp - 0x24], 0xe071
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], ecx
jge 0x431a78
push dword [ebp - 0x44]
lea ecx, [ebp - 0x7a4]
call fcn.004148e3
mov dword [eax], 0x48bbca63
xor eax, eax
inc dword [ebp - 0x44]
inc eax
cmp dword [ebp - 0x44], eax
jl 0x431a54
xor ecx, ecx
xor eax, eax
inc ecx
push 3
mov dword [ebp - 0x44], eax
pop ebx
cmp dword [ebp - 0x44], ebx
jge 0x431a9b
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x1ef4], 0x265ab3e9
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], ebx
jl 0x431a83
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 2
jge 0x431ab9
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x21f8], ecx
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], 2
jl 0x431aa4
xor eax, eax
push eax
lea ecx, [ebp - 0x7a4]
call fcn.004148e3
and dword [eax], 0
jmp 0x431af6
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0x4d9edbda
mov dword [ebp - 0x24], 0x8e17c109
cmp dword [ebp - 0x1ef0], eax
jne 0x431b08
inc dword [ebp - 0x34]
lea ecx, [ebp - 0x7a4]
push eax
call fcn.004148e3
inc dword [eax]
xor eax, eax
lea ecx, [ebp - 0x7a4]
push eax
call fcn.004148e3
cmp dword [eax], ebx
jle 0x431aca
lea ecx, [ebp - 0x7a4]
call fcn.004148c7
mov dword [ebp - 0x10], 0xa772304b
xor eax, eax
mov dword [ebp - 0x14], 0xffffffff
inc eax
mov dword [ebp - 4], eax
xor ecx, ecx
mov dword [ebp - 0x2c], 0x4f88039d
inc ecx
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x54], 0xffffffff
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], ecx
jge 0x431b60
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x524], 0x2c59
xor eax, eax
inc dword [ebp - 0xc]
inc eax
cmp dword [ebp - 0xc], eax
jl 0x431b45
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x431b76
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xbc8], 0xa52b4b5a
inc dword [ebp - 0xc]
xor eax, eax
inc eax
cmp dword [ebp - 0xc], eax
jl 0x431b65
mov dword [ebp - 0x14], 5
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 4], 0xffffffff
sbb eax, eax
neg eax
sub eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
xor ecx, ecx
neg eax
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x524]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x524]
mov eax, dword [ebp - 0xbc8]
mov eax, dword [ebp - 0x10]
cmp eax, 0x57a5
setge cl
xor eax, eax
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x38], 0xfffffff9
mov dword [ebp - 0x10], 0x8ec32687
mov dword [ebp - 0x34], 0xfffffffa
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xfffffffc
je 0x431d19
xor ebx, ebx
inc ebx
mov dword [ebp - 0x40], 0x9ea41449
lea ecx, [ebp - 0xfe0]
push ebx
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], ebx
jge 0x431c57
push dword [ebp - 0xc]
lea ecx, [ebp - 0xfe0]
call fcn.004148e3
mov dword [eax], 0x773672d7
xor eax, eax
inc dword [ebp - 0xc]
inc eax
cmp dword [ebp - 0xc], eax
jl 0x431c36
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x431c6d
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x1fe4], 0x8cd54673
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x431c5c
mov eax, dword [ebp - 0x40]
lea ecx, [ebp - 0xfe0]
xor eax, eax
push eax
call fcn.004148e3
mov ecx, dword [ebp - 0x40]
xor edx, edx
cmp dword [eax], ecx
setle dl
cmp edx, 0xd2d1a4e6
ja 0x431ca1
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x431ca1
mov edx, eax
jmp 0x431ca6
xor eax, eax
lea edx, [eax + 1]
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp eax, edx
setl cl
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xfe0]
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x40]
mov dword [ebp - 0x10], eax
xor eax, eax
push eax
call fcn.004148e3
mov ecx, dword [ebp - 0x40]
mov eax, dword [eax]
add eax, 0x71b79515
sub ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, dword [ebp - 0x40]
jg 0x431cf3
cmp dword [ebp - 0x38], eax
je 0x431cf3
cmp dword [ebp - 0x40], eax
je 0x431cf3
xor ebx, ebx
inc ebx
mov eax, ebx
jmp 0x431cf6
xor ebx, ebx
inc ebx
mov dword [ebp - 0x1fdc], eax
lea ecx, [ebp - 0xfe0]
call fcn.004148c7
dec dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0xfffffffc
jne 0x431c16
push 3
xor eax, eax
pop ebx
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xffffffe9
jne 0x431d92
xor ecx, ecx
inc ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x10], 0x1c
cmp dword [ebp - 0x10], eax
jl 0x431d58
mov dword [ebp - 0x54], 0x593f6a08
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x431d4a
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x54], eax
dec dword [ebp - 0x10]
push 0
pop eax
jns 0x431d34
mov eax, dword [ebp - 0x40]
xor eax, eax
inc eax
cmp dword [ebp - 0x40], eax
je 0x431d76
mov ecx, dword [ebp - 0x40]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setne dl
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x40]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp eax, ecx
push 0
setg dl
mov dword [ebp - 0x40], edx
dec dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0xffffffe9
pop eax
je 0x431d22
mov dword [ebp - 0x28], eax
xor esi, esi
mov dword [ebp - 0x3c], 0xfffc
inc esi
mov dword [ebp - 0xc], 0xe19e95d1
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x3c]
sub eax, dword [ebp - 0x3c]
cmp eax, 0xc6eff3de
jae 0x431dc4
xor eax, eax
cmp eax, dword [ebp - 0x3c]
je 0x431dc9
mov eax, esi
jmp 0x431dc6
xor eax, eax
cmp eax, dword [ebp - 0x3c]
mov eax, 0xf6285890
jne 0x431de8
mov dword [ebp - 0x54], 0xbacd
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xc], eax
jmp 0x431f93
mov dword [ebp - 0x28c], eax
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x284], eax
mov dword [ebp - 0x280], eax
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x431f8a
mov dword [ebp - 0x34], 0xe695ef2b
lea ecx, [ebp - 0x11a8]
mov dword [ebp - 0x10], 0xfffffffe
push ebx
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x30], 0xfffffff6
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ebx
jge 0x431e53
push dword [ebp - 4]
lea ecx, [ebp - 0x11a8]
call fcn.004148e3
mov dword [eax], 0xfbd42f90
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x431e35
xor eax, eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], ebx
jg 0x431f7c
jmp 0x431e63
xor eax, eax
mov dword [ebp - 4], eax
xor edx, edx
mov dword [ebp - 0x14], 9
mov dword [ebp - 0x54], 0x988a21d
dec dword [ebp - 4]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + eax*4 - 0x28c]
mov eax, dword [ebp - 4]
cmp eax, ecx
setge dl
mov dword [ebp - 0x34], edx
xor edx, edx
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0x28c]
mov eax, dword [ebp - 0x280]
mov eax, dword [ebp - 0x284]
mov eax, dword [ebp - 0x280]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, esi
setle dl
sub edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], eax
jne 0x431ed9
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x284]
xor edx, edx
mov eax, dword [ebp - 0x280]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x288]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
push esi
mov ecx, dword [ebp + eax*4 - 0x28c]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
sete dl
xor eax, eax
add edx, dword [ebp - 0x288]
cmp edx, 0x3c3d2146
setne al
xor edx, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x288]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
setne dl
xor ebx, ebx
mov dword [ebp - 0x10], edx
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x288]
cmp ecx, eax
lea ecx, [ebp - 0x11a8]
setg bl
call fcn.004148e3
mov dword [eax], ebx
xor eax, eax
cmp ebx, 0xffffffff
sete al
cmp eax, dword [ebp - 0x30]
jne 0x431f65
xor eax, eax
cmp dword [ebp - 0x284], eax
je 0x431f67
mov eax, esi
jmp 0x431f67
xor eax, eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x14]
inc dword [ebp - 0x3c]
push 3
pop ebx
cmp dword [ebp - 0x3c], ebx
jle 0x431e61
lea ecx, [ebp - 0x11a8]
call fcn.004148c7
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jle 0x431e0a
mov dword [ebp - 0x38], 0xffffffff
lea ecx, [ebp - 0x1938]
mov dword [ebp - 0x10], 0x2c03342e
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x40], 6
push 4
call fcn.004147f5
mov dword [ebp - 0x14], esi
xor eax, eax
mov dword [ebp - 0x54], 0xcdcb
mov dword [ebp - 4], eax
jmp 0x431fdc
push dword [ebp - 4]
lea ecx, [ebp - 0x1938]
call fcn.004148e3
mov dword [eax], ebx
inc dword [ebp - 4]
cmp dword [ebp - 4], 4
jl 0x431fc9
push 0xfffffffffffffffb
pop eax
mov dword [ebp - 0x10], eax
mov ebx, 0xfff8
cmp dword [ebp - 0x10], 6
jg 0x4321d8
jmp 0x431ffc
push 0xfffffffffffffffb
pop eax
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x24], 5
mov dword [ebp - 0x34], 0xf928d9ba
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x28], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x4321ba
mov dword [ebp - 0x24], 0xfffffffa
lea ecx, [ebp - 0x688]
push esi
call fcn.004147f5
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], esi
jge 0x432063
push dword [ebp - 4]
lea ecx, [ebp - 0x688]
call fcn.004148e3
mov dword [eax], 0xfffffffb
xor eax, eax
inc dword [ebp - 4]
inc eax
cmp dword [ebp - 4], eax
jl 0x432042
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x43208b
push eax
push 0x7e1
push eax
push 0x9f1
push 0x1583
push eax
push 0x1567
call dword [sym.imp.KERNEL32.dll_FormatMessageW]
xor eax, eax
mov dword [ebp - 0x28], eax
jmp 0x43219e
mov dword [ebp - 0x54], 0x7b722ba7
mov dword [ebp - 0x24], 0x755261fc
mov dword [ebp - 4], 0xfffffffe
mov dword [ebp - 0x40], 0xda7209c3
mov eax, dword [ebp - 4]
imul eax, dword [ebp - 0x54]
test eax, eax
jne 0x4320bd
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x688]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
xor eax, eax
push eax
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x688]
push eax
call fcn.004148e3
mov esi, eax
lea ecx, [ebp - 0x688]
xor eax, eax
push eax
call fcn.004148e3
mov ecx, dword [esi]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x2c]
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, eax
cmp ebx, ecx
sbb eax, eax
neg eax
inc eax
sub eax, dword [ebp - 4]
neg eax
sbb eax, eax
inc eax
imul eax, eax, 0x828c
add eax, dword [ebp - 4]
imul eax, eax, 0xe3c2
test eax, eax
je 0x432133
xor eax, eax
cmp dword [ebp - 0x14], eax
je 0x432135
xor ecx, ecx
lea esi, [ecx + 1]
jmp 0x432137
xor eax, eax
mov esi, eax
dec dword [ebp - 0x40]
lea ecx, [ebp - 0x688]
push eax
call fcn.004148e3
xor ebx, ebx
lea ecx, [ebp - 0x688]
cmp esi, dword [eax]
setge bl
xor eax, eax
push eax
call fcn.004148e3
mov edx, dword [ebp - 0x40]
mov esi, eax
mov ecx, dword [ebp - 0x14]
xor eax, eax
cmp edx, ecx
mov ecx, dword [ebp - 0x14]
setne al
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, ebx
mov ebx, 0xfff8
sub eax, ecx
neg eax
sbb eax, eax
xor edx, edx
inc eax
cmp eax, dword [esi]
mov eax, dword [ebp - 0x10]
setge dl
xor ecx, ecx
cmp eax, edx
setg cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x28]
push 0xfffffffffffffff8
pop eax
cmp dword [ebp - 0x28], eax
jne 0x432093
lea ecx, [ebp - 0x688]
call fcn.004148c7
xor esi, esi
inc esi
jmp 0x4321c4
mov dword [ebp - 0x34], 0x105f61ca
inc dword [ebp - 0x34]
mov dword [ebp - 0x54], 0x47399d01
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 6
jle 0x431ff9
xor eax, eax
mov dword [ebp - 0x40], eax
jmp 0x4321e7
cmp dword [ebp - 0x14], eax
jne 0x4321ed
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 7
jl 0x4321df
lea ecx, [ebp - 0x1938]
call fcn.004148c7
xor eax, eax
push 3
mov dword [ebp - 4], eax
pop ebx
cmp dword [ebp - 4], ebx
jge 0x43221d
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xc10], 0
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x432205
xor eax, eax
mov dword [ebp - 0x38], 2
cmp dword [ebp - 0x38], eax
jl 0x43311b
jmp 0x432232
xor esi, esi
inc esi
mov dword [ebp - 0x24], 0xc8b1
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x432252
push 0x1608
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VirtualQueryEx]
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x432275
push 0x20b5
push 0x11cd
push 0x29c
call edi
push eax
call dword [sym.imp.USER32.dll_CheckRadioButton]
xor eax, eax
mov dword [ebp - 0x2c], 0xed23b618
lea ecx, [ebp - 0x146c]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x34], 0x708bee6d
push ebx
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], esi
jge 0x4322bc
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xa4], esi
xor eax, eax
inc dword [ebp - 0xc]
inc eax
push eax
pop esi
cmp dword [ebp - 0xc], eax
jl 0x4322a3
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], ebx
jge 0x4322e1
push dword [ebp - 0xc]
lea ecx, [ebp - 0x146c]
call fcn.004148e3
push 0xfffffffffffffff8
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jl 0x4322c4
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x4322ff
push 0x17e9
push 0x257c
call edi
push eax
call dword [sym.imp.USER32.dll_SetWindowLongA]
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], eax
jl 0x4323cd
mov eax, dword [ebp - 0x44]
mov ecx, 0xffff77a5
mov eax, dword [ebp + eax*4 - 0xa4]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0xa4]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0xa4]
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp + eax*4 - 0xa4]
mov eax, dword [ebp - 0x44]
sub ecx, eax
add edx, ecx
xor ecx, ecx
add edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0xa4]
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, dword [ebp - 0x44]
jle 0x432363
cmp dword [ebp - 0xa4], eax
je 0x432363
lea ecx, [eax + 1]
jmp 0x432365
mov ecx, eax
mov eax, dword [ebp - 0x44]
add eax, ecx
je 0x432378
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x43237a
lea ecx, [eax + 1]
jmp 0x43237c
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0xa4]
sub ecx, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x146c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xd9935ff5
sbb eax, eax
inc eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0xa4]
mov esi, dword [ebp - 0x34]
sub esi, eax
xor eax, eax
push eax
call fcn.004148e3
mov ecx, dword [ebp - 0xa4]
sub esi, ecx
mov dword [eax], esi
dec dword [ebp - 0x44]
jns 0x43230b
lea ecx, [ebp - 0x146c]
call fcn.004148c7
xor eax, eax
mov dword [ebp - 4], eax
jmp 0x4323f0
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x990], 0xfffffffb
inc dword [ebp - 4]
xor eax, eax
inc eax
cmp dword [ebp - 4], eax
jl 0x4323df
push ebx
lea ecx, [ebp - 0x1b1c]
call fcn.004147f5
xor eax, eax
mov dword [ebp - 0x14], 0x2667a876
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ebx
jge 0x432433
push dword [ebp - 4]
lea ecx, [ebp - 0x1b1c]
call fcn.004148e3
mov dword [eax], 0xfdf99ff6
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x432415
xor eax, eax
push 2
pop esi
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], eax
jl 0x4324e2
push esi
lea ecx, [ebp - 0x750]
call fcn.004147f5
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], esi
jge 0x432473
push dword [ebp - 4]
lea ecx, [ebp - 0x750]
call fcn.004148e3
or dword [eax], 0xffffffff
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x432458
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x43248a
push 0xc44
push eax
call dword [sym.imp.ADVAPI32.dll_InitializeSecurityDescriptor]
xor eax, eax
push eax
lea ecx, [ebp - 0x750]
call fcn.004148e3
mov dword [eax], esi
jmp 0x4324bb
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x4324ad
push eax
call dword [sym.imp.KERNEL32.dll_ResumeThread]
xor eax, eax
push eax
lea ecx, [ebp - 0x750]
call fcn.004148e3
dec dword [eax]
xor eax, eax
lea ecx, [ebp - 0x750]
push eax
call fcn.004148e3
cmp dword [eax], 0
jge 0x43249a
lea ecx, [ebp - 0x750]
call fcn.004148c7
dec dword [ebp - 0x14]
jns 0x432442
lea ecx, [ebp - 0x1b1c]
call fcn.004148c7
mov dword [ebp - 0x2c], esi
xor eax, eax
cmp dword [ebp - 0x2c], eax
jl 0x43310f
push ebx
lea ecx, [ebp - 0x6a0]
call fcn.004147f5
push esi
lea ecx, [ebp - 0x7ec]
call fcn.004147f5
mov dword [ebp - 0x34], 0x758e92ed
xor eax, eax
mov dword [ebp - 0x30], 0xe735
mov dword [ebp - 0x54], 0xb56095db
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], ebx
jge 0x432550
push dword [ebp - 0xc]
lea ecx, [ebp - 0x6a0]
call fcn.004148e3
mov dword [eax], 0x10c93b4e
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jl 0x432532
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], esi
jge 0x432576
push dword [ebp - 0xc]
lea ecx, [ebp - 0x7ec]
call fcn.004148e3
mov dword [eax], 0x633efc07
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x432558
xor eax, eax
push eax
lea ecx, [ebp - 0x6a0]
call fcn.004148e3
lea ecx, [ebp - 0x6a0]
and dword [eax], 0
xor eax, eax
push eax
call fcn.004148e3
cmp dword [eax], 0xffffffe9
jle 0x432724
mov dword [ebp - 0xc], 0x9c3fbb4
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x10], 0x61e70716
mov dword [ebp - 0xc], eax
inc ecx
cmp dword [ebp - 0xc], ecx
jg 0x4326fc
movdqa xmm0, xmmword [0xaa6ba0]
lea eax, [ebp - 0x1d08]
push eax
lea eax, [ebp - 0x1d18]
push eax
lea ecx, [ebp - 0x2210]
movdqu xmmword [ebp - 0x1d18], xmm0
call fcn.004148f5
lea ecx, [ebp - 0x2d1]
mov esi, eax
call fcn.004148f2
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x11c0]
push dword [esi]
call fcn.004148a1
xor eax, eax
lea ecx, [ebp - 0x6a0]
push eax
call fcn.004148e3
push dword [ebp - 0xc]
lea ecx, [ebp - 0x7ec]
call fcn.004148e3
lea ecx, [ebp - 0x7ec]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
push dword [ebp - 0xc]
call fcn.004148e3
mov ecx, dword [ebp - 0x34]
xor ebx, ebx
push dword [ebp - 0xc]
cmp ecx, dword [eax]
lea ecx, [ebp - 0x7ec]
setne bl
call fcn.004148e3
mov ecx, dword [ebp - 0xc]
xor edx, edx
push dword [ebp - 0xc]
cmp ebx, ecx
lea ecx, [ebp - 0x7ec]
setl dl
sub edx, dword [eax]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x54], edx
call fcn.004148e3
mov eax, dword [eax]
add eax, dword [ebp - 0x54]
je 0x43267e
xor eax, eax
cmp dword [ebp - 0xc], eax
je 0x432680
lea edx, [eax + 1]
jmp 0x432682
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0xc]
xor ecx, ecx
cmp edx, eax
push 3
setle cl
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x11c0]
call fcn.004148e3
xor ecx, ecx
cmp dword [eax], 0x40ed3c15
setg cl
cmp ecx, 0xec134886
jae 0x4326b2
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp eax, 0x9cec79e6
setne cl
xor eax, eax
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x10], eax
jmp 0x4326da
push dword [ebp - 0x10]
call fcn.004148e3
mov dword [eax], 0xfff9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
lea ecx, [ebp - 0x11c0]
jl 0x4326c9
call fcn.004148c7
inc dword [ebp - 0xc]
xor eax, eax
inc eax
cmp dword [ebp - 0xc], eax
jle 0x4325bb
xor eax, eax
push eax
lea ecx, [ebp - 0x6a0]
call fcn.004148e3
lea ecx, [ebp - 0x6a0]
dec dword [eax]
xor eax, eax
push eax
call fcn.004148e3
cmp dword [eax], 0xffffffe9
jg 0x43259c
push 2
pop esi
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x432737
call edi
push eax
call dword [sym.imp.USER32.dll_SetFocus]
lea ecx, [ebp - 0x7ec]
call fcn.004148c7
lea ecx, [ebp - 0x6a0]
call fcn.004148c7
push esi
lea ecx, [ebp - 0x11f0]
call fcn.004147f5
xor ebx, ebx
lea ecx, [ebp - 0x158c]
inc ebx
push ebx
call fcn.004147f5
mov dword [ebp - 0x10], ebx
xor eax, eax
mov dword [ebp - 0x54], 0x38dd44ad
mov dword [ebp - 0x24], 0x310fecaf
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ebx
jge 0x4327a7
push dword [ebp - 4]
lea ecx, [ebp - 0x158c]
call fcn.004148e3
mov dword [eax], 0xb0f7
xor eax, eax
inc dword [ebp - 4]
inc eax
cmp dword [ebp - 4], eax
jl 0x432783
xor ebx, ebx
xor eax, eax
inc ebx
push eax
lea ecx, [ebp - 0x158c]
call fcn.004148e3
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x10], 0xfffffffc
jmp 0x4327f4
xor eax, eax
mov dword [ebp - 4], eax
jmp 0x4327d9
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1950], 0x7b4bc66
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x4327c8
mov eax, dword [ebp - 0x194c]
mov eax, dword [ebp - 0x194c]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x54], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xb
je 0x4327c1
lea ecx, [ebp - 0x158c]
call fcn.004148c7
mov dword [ebp - 0xc], 0x82062403
mov dword [ebp - 0xc], 0x15
jmp 0x432909
cmp dword [ebp - 0xc], 0xffffffe8
je 0x432818
dec dword [ebp - 0x38]
push 0
pop eax
jns 0x43222f
mov dword [ebp - 0x14], 0xd3df75dc
mov ecx, 0xe402095
mov dword [ebp - 0x10], 9
mov dword [ebp - 0x16e0], ecx
mov dword [ebp - 0x16dc], ecx
mov dword [ebp - 0x16d8], ecx
mov dword [ebp - 0x16d4], ecx
push 2
mov dword [ebp - 0x24], 0x59c3cbaa
pop esi
mov dword [ebp - 0x50], 0xffffffff
mov dword [ebp - 0x14], esi
jmp 0x433360
mov dword [ebp - 0x3c], 0x35f394a2
mov dword [ebp - 0x2c], 0x7a10dd66
mov dword [ebp - 0x40], 0xed5297f1
push 0xfffffffffffffffc
mov dword [ebp - 0x28], 0xfa629a01
pop ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 4], eax
cmp dword [ebp - 4], esi
jge 0x43319d
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x10f0], ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x433189
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x3c], eax
inc ebx
cmp dword [ebp - 0x3c], 0xffffffe6
jg 0x433299
mov dword [ebp - 0x34], 0xd1ad67a4
mov dword [ebp - 0x24], 0x126ed4bc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0xa9c4ad15
mov dword [ebp - 0x24], 0x832cb818
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x24], 0xe588ce32
mov dword [ebp - 0x30], eax
mov dword [ebp - 4], eax
jmp 0x4331eb
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x2120], ebx
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x4331de
mov eax, dword [ebp - 0x34]
xor eax, eax
cmp dword [ebp - 0x2c], eax
jne 0x433247
cmp dword [ebp - 0x34], eax
je 0x43323e
inc dword [ebp - 0x40]
mov ecx, dword [ebp - 0x40]
neg ecx
sbb ecx, ecx
neg ecx
cmp ecx, 0x8db1
setl al
xor ecx, ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x10ec]
mov eax, dword [ebp - 0x40]
cmp eax, 0xcec8
setg cl
cmp ecx, dword [ebp - 0x16d4]
jl 0x43323c
mov eax, ebx
jmp 0x43323e
xor eax, eax
cmp eax, dword [ebp - 0x3c]
jge 0x433247
xor eax, eax
jmp 0x433249
mov eax, ebx
imul eax, eax, 0x1822
test eax, eax
jne 0x43325d
cmp dword [ebp - 0x50], eax
jne 0x43325d
cmp dword [ebp - 0x3c], eax
je 0x43325f
mov eax, ebx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10f0]
push 4
pop ecx
sub ecx, eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], 0xfffffffd
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffe6
push 0
pop eax
jle 0x4331ad
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xffffffe4
jne 0x43335d
mov dword [ebp - 0x2c], 0x2c88
lea ecx, [ebp - 0xb84]
push 3
call fcn.004147f5
xor eax, eax
mov dword [ebp - 4], eax
jmp 0x4332ce
push dword [ebp - 4]
call fcn.004148e3
mov dword [eax], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
lea ecx, [ebp - 0xb84]
jl 0x4332c1
mov eax, dword [ebp - 0x2c]
push ebx
call fcn.004148e3
inc dword [ebp - 0x2c]
lea ecx, [ebp - 0xb84]
xor eax, eax
push eax
call fcn.004148e3
mov ecx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x28]
push 2
sub ecx, dword [eax]
add esi, ecx
lea ecx, [ebp - 0xb84]
neg esi
sbb esi, esi
neg esi
call fcn.004148e3
mov ecx, dword [ebp - 0x40]
mov edi, eax
imul ecx, esi
xor eax, eax
mov edx, 0xfb84c81e
sub edx, ecx
mov ecx, dword [ebp - 0x40]
cmp edx, ecx
setge al
xor edx, edx
cmp eax, 0x82240a4
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [edi], ecx
lea ecx, [ebp - 0xb84]
call fcn.004148c7
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe4
push 2
pop esi
je 0x4332a6
xor eax, eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe5
jne 0x43315f
mov dword [ebp - 0x2c], 0x77c8748a
mov dword [ebp - 0x40], 0x642c70bb
mov dword [ebp - 0x34], 9
mov dword [ebp - 4], eax
cmp dword [ebp - 4], esi
jge 0x43339f
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xc64], 0xffffffff
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x433387
xor eax, eax
xor edi, edi
inc edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x40], eax
jmp 0x433409
mov dword [ebp - 0x20], 0xfffffffe
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], esi
jge 0x4333cd
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xc64], edi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x4333b9
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jg 0x433406
mov dword [ebp - 0x54], 0x7e44142b
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
push 0
mov eax, dword [ebp + eax*4 - 0xc64]
mov eax, dword [ebp - 0xc60]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x54], eax
inc dword [ebp - 0x20]
pop eax
cmp dword [ebp - 0x20], edi
jle 0x4333d5
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], edi
jle 0x4333aa
push 4
lea ecx, [ebp - 0x184]
call fcn.004147f5
mov dword [ebp - 4], 0x5211521f
xor eax, eax
mov dword [ebp - 0x34], 0xfffffffc
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 4
jge 0x433453
push dword [ebp - 4]
lea ecx, [ebp - 0x184]
call fcn.004148e3
mov dword [eax], 0x386cce57
inc dword [ebp - 4]
cmp dword [ebp - 4], 4
jl 0x433434
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x43346e
push eax
push eax
push eax
push eax
push eax
push eax
push 0x116c
push eax
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
push esi
lea ecx, [ebp - 0x184]
call fcn.004148e3
push edi
lea ecx, [ebp - 0x184]
mov esi, eax
call fcn.004148e3
mov ecx, dword [eax]
imul ecx, dword [esi]
test ecx, ecx
jne 0x43358b
push 3
lea ecx, [ebp - 0x184]
call fcn.004148e3
push 2
pop esi
push esi
lea ecx, [ebp - 0x184]
call fcn.004148e3
cmp dword [eax], 0
je 0x4334c4
xor eax, eax
lea ecx, [ebp - 0x184]
push eax
call fcn.004148e3
push edi
lea ecx, [ebp - 0x184]
call fcn.004148e3
push edi
lea ecx, [ebp - 0x184]
call fcn.004148e3
push edi
lea ecx, [ebp - 0x184]
call fcn.004148e3
xor eax, eax
lea ecx, [ebp - 0x184]
push eax
call fcn.004148e3
push edi
lea ecx, [ebp - 0x184]
call fcn.004148e3
mov dword [ebp - 4], edi
lea ecx, [ebp - 0x184]
push esi
call fcn.004148e3
mov ecx, dword [ebp - 4]
xor edx, edx
cmp ecx, 0x2617
setle dl
xor ecx, ecx
cmp edx, 0xfffffffe
setge cl
xor edx, edx
cmp ecx, dword [eax]
lea ecx, [ebp - 0x184]
setg dl
xor ebx, ebx
cmp edx, 0xfffffff9
setle bl
xor eax, eax
push eax
call fcn.004148e3
xor ecx, ecx
cmp ebx, dword [eax]
setle cl
test ecx, ecx
jns 0x433559
xor eax, eax
cmp dword [ebp - 4], eax
jne 0x433559
mov eax, dword [ebp - 4]
push edi
lea ecx, [ebp - 0x184]
call fcn.004148e3
xor ebx, ebx
cmp dword [eax], ebx
jne 0x433580
push 3
lea ecx, [ebp - 0x184]
call fcn.004148e3
cmp dword [eax], ebx
jne 0x433580
xor eax, eax
jmp 0x433582
mov eax, edi
cmp eax, dword [ebp - 0x34]
jle 0x43358e
xor eax, eax
jmp 0x433590
push 2
pop esi
mov eax, edi
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x184]
call fcn.004148c7
mov dword [ebp - 0x3c], 0x56a3367f
xor eax, eax
mov dword [ebp - 0xc], 0x75c9
mov dword [ebp - 0x54], 0xd94b4b13
push 3
mov dword [ebp - 4], eax
pop ebx
cmp dword [ebp - 4], ebx
jge 0x4335d8
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x23c0], 0
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x4335c0
xor eax, eax
cmp dword [ebp - 0xc], eax
je 0x433603
mov dword [ebp - 0xc], 0xf
jmp 0x4335fb
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x4335f8
push eax
call dword [sym.imp.USER32.dll_RegisterWindowMessageW]
xor eax, eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x18
jle 0x4335e6
jmp 0x433629
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x433615
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x433624
mov dword [ebp - 0x54], 0x65121ac4
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jle 0x43361a
push edi
lea ecx, [ebp - 0x3f0]
call fcn.004147f5
mov dword [ebp - 0x10], 0xfffffff7
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x14], 0x1f200025
mov dword [ebp - 4], 0xe1879501
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], esi
jge 0x43366f
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x2228], 0xfffffff9
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], esi
jl 0x433657
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], ebx
jge 0x43368f
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x23a8], 0
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], ebx
jl 0x433677
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], esi
jge 0x4336ab
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x1098], edi
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], esi
jl 0x433697
xor eax, eax
mov dword [ebp - 0x10], 0x17
jmp 0x433731
cmp dword [ebp - 0x10], 0x11
jne 0x4336b4