Function at 0x10038c77
Capabilities:
Accept command line arguments
Allocate thread local storage
Check os version
Clear file content
Delete directory
Delete file
Enumerate gui resources
Get common file path
Get file attributes
Identify system language via api
Modify service
Parse pe header
Query environment variable
Query or enumerate registry value
Read .ini file
Start service
Terminate process

Disassembly:
mov eax, 0x10091c36
call fcn.100902f0
mov eax, 0x176c
call fcn.1008caa0
push ebx
push esi
push edi
mov dword [ebp - 0x5c], ecx
lea ecx, [ebp - 0x41c]
push 4
mov byte [ebp - 0x85], dl
call fcn.10019ba5
xor eax, eax
xor esi, esi
mov dword [ebp - 4], eax
inc esi
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x2c], 0xcc80fc3a
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x10038ce5
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x41c]
call fcn.10019c33
mov dword [eax], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10038cc6
xor eax, eax
push 3
mov dword [ebp - 0x24], eax
pop ebx
cmp dword [ebp - 0x24], ebx
jg 0x10038d83
push ebx
lea ecx, [ebp - 0x95c]
call fcn.10019ba5
xor eax, eax
inc eax
mov byte [ebp - 4], al
mov dword [ebp - 0x1c], 0
jmp 0x10038d22
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x95c]
call fcn.10019c33
mov dword [eax], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10038d0f
push dword [ebp - 0x24]
lea ecx, [ebp - 0x41c]
call fcn.10019c33
xor esi, esi
lea ecx, [ebp - 0x95c]
inc esi
push esi
call fcn.10019c33
push esi
lea ecx, [ebp - 0x95c]
call fcn.10019c33
push esi
lea ecx, [ebp - 0x95c]
call fcn.10019c33
xor ecx, ecx
cmp dword [eax], ecx
sete cl
mov dword [ebp - 0x2c], ecx
lea ecx, [ebp - 0x95c]
mov byte [ebp - 4], 0
call fcn.10019c2e
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jle 0x10038cf4
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x24], eax
push 0xffffffffffffffff
pop ecx
cmp dword [ebp - 0x24], ebx
jg 0x10038f71
mov dword [ebp - 0x14], 0x9c821f9
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x10038dbd
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetBkColor]
xor eax, eax
or ecx, 0xffffffff
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jg 0x10038f60
mov dword [ebp - 0x4c], ecx
lea ecx, [ebp - 0xd00]
push esi
call fcn.10019ba5
xor eax, eax
mov byte [ebp - 4], 2
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x10038e0a
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xd00]
call fcn.10019c33
mov dword [eax], 0xbe2ff5ff
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x10038de6
xor esi, esi
xor eax, eax
inc esi
mov dword [ebp - 0x4c], ebx
cmp dword [ebp - 0x4c], eax
jl 0x10038f41
mov dword [ebp - 0x20], 0xc3d6c1df
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jg 0x10038f06
mov dword [ebp - 0x28], esi
lea ecx, [ebp - 0x41c]
push dword [ebp - 0x2c]
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x41c]
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x41c]
call fcn.10019c33
mov ecx, 0xffff944a
xor ebx, ebx
push 0
sub ecx, dword [eax]
cmp ecx, 0x652f093d
lea ecx, [ebp - 0xd00]
setg bl
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x41c]
mov dword [eax], ebx
call fcn.10019c33
mov edx, dword [ebp - 0x2c]
xor ecx, ecx
cmp ebx, esi
push 2
setle cl
xor ebx, ebx
imul ecx, ecx, 0x98c2
cmp dword [eax], ecx
mov eax, dword [ebp - 0x14]
setge bl
sub ebx, 4
neg ebx
sbb ebx, ebx
inc ebx
sub edx, ebx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
sub ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x14]
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x41c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
call fcn.10019c33
mov edx, dword [ebp - 0x14]
sub edx, 0x5d01
neg edx
push 3
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, dword [eax]
pop ebx
setne cl
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x28], 0
jne 0x10038f04
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x10038e2c
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10038f33
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x10038f30
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x10038f2b
push eax
push eax
push 0xb0d
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
xor eax, eax
dec dword [ebp - 0x1c]
jns 0x10038f13
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x10038f0b
dec dword [ebp - 0x4c]
jns 0x10038e16
lea ecx, [ebp - 0xd00]
mov byte [ebp - 4], al
call fcn.10019c2e
inc dword [ebp - 0x2c]
push 0xffffffffffffffff
pop ecx
cmp dword [ebp - 0x2c], ebx
jle 0x10038dc9
xor eax, eax
inc dword [ebp - 0x24]
push 0xffffffffffffffff
pop ecx
cmp dword [ebp - 0x24], ebx
jle 0x10038d98
or ecx, ecx
mov dword [ebp - 4], ecx
lea ecx, [ebp - 0x41c]
call fcn.10019c2e
mov dword [ebp - 0x2c], 0xfffffffb
push 0xfffffffffffffffd
mov dword [ebp - 0x28], 0x1151c3c3
pop ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x1c], 0
jmp 0x10038fa9
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x4b8], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10038f9c
mov byte [ebp - 0x39], 0
cmp byte [ebp - 0x39], 0
je 0x10038fdc
push 0x158d
push 0x1216
push 0x176c
push 0x1582
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Ellipse]
mov dword [ebp - 0x2c], 2
cmp dword [ebp - 0x2c], 0
jl 0x10039143
mov dword [ebp - 0x14], 0x1e3ff14e
lea ecx, [ebp - 0x9c8]
or eax, 0xffffffff
mov dword [ebp - 0x48], 0xdf11
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x54], 0x9ebef9f3
push 2
call fcn.10019ba5
mov dword [ebp - 4], ebx
mov dword [ebp - 0x1c], 0
jmp 0x10039038
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x9c8]
call fcn.10019c33
mov dword [eax], 0xc53a
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10039021
mov eax, dword [ebp - 0x4b4]
mov dword [ebp - 0x14], eax
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x1003908d
cmp dword [ebp - 0x4b4], esi
jge 0x1003905d
cmp dword [ebp - 0x40], eax
je 0x1003905d
mov eax, esi
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4b0]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x4b8]
mov eax, dword [ebp - 0x4b8]
mov eax, dword [ebp - 0x4b8]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x9c8]
push 0
mov eax, dword [ebp + eax*4 - 0x4b8]
mov eax, dword [ebp - 0x28]
call fcn.10019c33
cmp dword [eax], 0
je 0x100390bb
mov eax, dword [ebp - 0x2c]
mov ecx, 0xffff44e3
sub ecx, eax
mov dword [ebp - 0x44], ecx
jmp 0x1003910e
push esi
lea ecx, [ebp - 0x88c]
call fcn.10019ba5
mov byte [ebp - 4], 4
mov dword [ebp - 0x1c], 0
jmp 0x100390e5
push dword [ebp - 0x1c]
call fcn.10019c33
mov dword [eax], 0xa1e2510a
inc dword [ebp - 0x1c]
xor eax, eax
lea ecx, [ebp - 0x88c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x100390d4
push 0
call fcn.10019c33
lea ecx, [ebp - 0x88c]
cmp dword [eax], 0
jne 0x1003912d
cmp dword [ebp - 0x44], 0
call fcn.10019c2e
or eax, 0xffffffff
lea ecx, [ebp - 0x9c8]
mov dword [ebp - 4], eax
call fcn.10019c2e
dec dword [ebp - 0x2c]
push 1
pop esi
jns 0x10038fed
jmp 0x10039143
call fcn.10019c2e
or eax, 0xffffffff
lea ecx, [ebp - 0x9c8]
mov dword [ebp - 4], eax
call fcn.10019c2e
mov dword [ebp - 0x2c], 0xc8748afa
xor eax, eax
mov dword [ebp - 0x24], 0xa9bacde9
inc eax
mov dword [ebp - 0x48], 0xfffffff8
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x28], 0x2da
mov dword [ebp - 0x44], 0x15a8df04
mov dword [ebp - 0x1c], 0
jmp 0x10039189
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x844], 0x1462ccd2
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x10039175
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp eax, 0x9a20
mov eax, dword [ebp - 0x28]
setle cl
xor edx, edx
cmp ecx, 0x87d6
push 9
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0x844], ecx
mov dword [ebp - 0x44], ecx
pop ecx
cmp dword [ebp - 0x24], eax
je 0x100391f0
mov dword [ebp - 0x40], ecx
dec dword [ebp - 0x40]
jmp 0x10039220
mov dword [ebp - 0x24], 0xffffffe9
jmp 0x1003921a
mov dword [ebp - 0x48], 0x17017a68
cmp dword [ebp - 0x48], eax
jne 0x10039220
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x10039217
push eax
call dword [sym.imp.USER32.dll_DestroyCursor]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xe
jg 0x100391f9
movdqa xmm0, xmmword [0x10007d70]
lea eax, [ebp - 0x124c]
push eax
lea eax, [ebp - 0x125c]
push eax
lea ecx, [ebp - 0x15fc]
movdqu xmmword [ebp - 0x125c], xmm0
call fcn.10019c42
lea ecx, [ebp - 0x1cb]
mov esi, eax
call fcn.10008de3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xdfc]
push dword [esi]
call fcn.10019c04
xor ebx, ebx
mov dword [ebp - 4], 5
inc ebx
xor eax, eax
push 3
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x20], eax
pop esi
jmp 0x1003930b
mov dword [ebp - 0x1c], 0xfffffff9
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003929d
push 0xf07
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0xdfc]
mov eax, dword [ebp - 0x20]
push dword [ebp - 0x20]
call fcn.10019c33
push dword [ebp - 0x20]
lea ecx, [ebp - 0xdfc]
mov esi, eax
call fcn.10019c33
xor edx, edx
push 3
mov ecx, dword [eax]
mov dword [esi], ecx
mov ecx, dword [ebp - 0x1c]
cmp ecx, ebx
setge dl
xor ecx, ecx
imul edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp edx, eax
mov eax, dword [ebp - 0x20]
setge cl
xor edx, edx
cmp ecx, eax
setl dl
add edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x20]
neg edx
sbb edx, edx
xor eax, eax
inc edx
cmp dword [esi], edx
pop esi
setl al
imul eax, eax, 0x3293
push 0
mov dword [ebp - 0x1c], eax
inc dword [ebp - 0x20]
pop eax
cmp dword [ebp - 0x20], esi
jle 0x10039281
or eax, 0xffffffff
lea ecx, [ebp - 0xdfc]
mov dword [ebp - 4], eax
call fcn.10019c2e
mov dword [ebp - 0x34], 0xc45cdbe8
xor eax, eax
inc eax
mov dword [ebp - 0x20], eax
push 7
pop ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x48], 0x21e0bec0
mov dword [ebp - 0x20], 0x1d
cmp dword [ebp - 0x20], 0x13
je 0x100393d8
jmp 0x10039355
xor eax, eax
inc eax
mov dword [ebp - 0x28], 0xfffffffa
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x1c], 0
jmp 0x1003937c
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x874], 0xfffffff6
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x10039368
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
sub edx, eax
mov eax, dword [ebp - 0x20]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
mov eax, 0xb0e1b1b5
cmp eax, ecx
sbb eax, eax
neg eax
mov dword [ebp - 0x874], eax
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
neg ecx
sub ecx, eax
mov dword [ebp - 0x48], ecx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x13
jne 0x10039352
push esi
lea ecx, [ebp - 0x3b0]
call fcn.10019ba5
xor eax, eax
mov dword [ebp - 4], 6
inc eax
lea ecx, [ebp - 0x560]
mov dword [ebp - 0x44], eax
push eax
call fcn.10019ba5
mov byte [ebp - 4], bl
lea ecx, [ebp - 0xcc4]
mov dword [ebp - 0x14], 0xb4dfecbe
mov dword [ebp - 0x54], 0x5e3a
mov dword [ebp - 0x40], 0xa832397b
push 4
call fcn.10019ba5
mov byte [ebp - 4], 8
mov dword [ebp - 0x18], 0
jmp 0x10039446
push dword [ebp - 0x18]
lea ecx, [ebp - 0x3b0]
call fcn.10019c33
mov dword [eax], 0xfffffffa
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003942f
mov dword [ebp - 0x18], 0
jmp 0x10039468
push dword [ebp - 0x18]
lea ecx, [ebp - 0x560]
call fcn.10019c33
and dword [eax], 0
inc dword [ebp - 0x18]
xor eax, eax
inc eax
cmp dword [ebp - 0x18], eax
jl 0x10039454
mov dword [ebp - 0x18], 0
jmp 0x10039490
push dword [ebp - 0x18]
lea ecx, [ebp - 0xcc4]
call fcn.10019c33
mov dword [eax], 0xe734f12c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10039479
push 2
lea ecx, [ebp - 0x3b0]
call fcn.10019c33
cmp dword [eax], 0
je 0x100394b4
mov dword [ebp - 0x40], 0xf251d69f
inc dword [ebp - 0x40]
jmp 0x10039530
mov dword [ebp - 0x1c], esi
xor ebx, ebx
inc ebx
xor edx, edx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x48], 0x99740826
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
push 2
setge dl
lea ecx, [ebp - 0x3b0]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x44]
call fcn.10019c33
cmp dword [eax], ebx
jl 0x1003950d
push 0
lea ecx, [ebp - 0x560]
call fcn.10019c33
cmp dword [eax], 0
jne 0x1003950d
xor ecx, ecx
jmp 0x10039512
xor eax, eax
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x14]
add eax, ecx
neg eax
jne 0x1003951e
mov eax, dword [ebp - 0x28]
push 0
lea ecx, [ebp - 0x560]
call fcn.10019c33
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x1003955e
push eax
lea ecx, [ebp - 0x3b0]
call fcn.10019c33
push 2
lea ecx, [ebp - 0x3b0]
call fcn.10019c33
imul eax, dword [ebp - 0x54], 0xc1c7
test eax, eax
jne 0x1003955e
mov eax, dword [ebp - 0x14]
push 2
lea ecx, [ebp - 0x3b0]
call fcn.10019c33
push 0
lea ecx, [ebp - 0x560]
call fcn.10019c33
xor ecx, ecx
push 0
cmp dword [eax], ecx
setg cl
xor ebx, ebx
test ecx, ecx
lea ecx, [ebp - 0x560]
setle bl
call fcn.10019c33
xor ecx, ecx
mov dword [eax], ebx
mov dword [ebp - 0x40], ebx
mov eax, dword [ebp - 0x40]
cmp eax, 0x6be8
setle cl
cmp ecx, 0x6511f0b9
jne 0x100395ba
push 0
lea ecx, [ebp - 0x560]
call fcn.10019c33
push 0
lea ecx, [ebp - 0x3b0]
call fcn.10019c33
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0xcc4]
mov eax, dword [ebp - 0x14]
xor esi, esi
inc esi
push esi
call fcn.10019c33
or ebx, 0xffffffff
lea ecx, [ebp - 0xcc4]
mov dword [eax], ebx
call fcn.10019c2e
lea ecx, [ebp - 0x560]
call fcn.10019c2e
lea ecx, [ebp - 0x3b0]
mov dword [ebp - 4], ebx
call fcn.10019c2e
mov dword [ebp - 0x2c], 0xe216
mov dword [ebp - 0x48], 0
cmp dword [ebp - 0x2c], 0x7c20
je 0x1003962e
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x48], ebx
mov eax, dword [ebp - 0x48]
push 0xfffffffffffffff7
pop ecx
cmp ecx, eax
sbb eax, eax
neg eax
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x40], 0x76a17913
mov dword [ebp - 0x54], 0xd157
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jge 0x1003966e
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x284], esi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10039659
xor eax, eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], esi
jg 0x1003a1ed
push 0xfffffffffffffff8
pop ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x48], 0x65a3ff56
cmp dword [ebp - 0x18], eax
jne 0x100396d3
mov eax, dword [ebp - 0x18]
xor edx, edx
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 ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ebx, ebx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x18]
setge cl
sub eax, ecx
add eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x18]
jne 0x100396d3
xor ecx, ecx
jmp 0x100396db
xor eax, eax
xor esi, esi
inc esi
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x18]
imul eax, ecx
cmp eax, esi
sbb eax, eax
neg eax
cmp eax, 0x24039b64
jg 0x1003986b
or eax, 0xffffffff
mov dword [ebp - 0x48], eax
xor eax, eax
push 0x12
mov dword [ebp - 0x18], eax
pop ebx
cmp dword [ebp - 0x18], ebx
jg 0x100398e5
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x40], 0xb6af4a9b
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003973b
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push 0x867
push 0x1faf
push 0x1ba3
push eax
call dword [sym.imp.ADVAPI32.dll_ChangeServiceConfigW]
xor eax, eax
mov dword [ebp - 0x24], 5
cmp dword [ebp - 0x24], 0x14
jg 0x1003985a
push 3
pop ecx
mov dword [ebp - 0x40], 0xf5ea
mov dword [ebp - 0x40], 9
mov dword [ebp - 0x1c], eax
jmp 0x1003976f
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x334], esi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10039762
mov dword [ebp - 0x330], 5
cmp dword [ebp - 0x330], ebx
je 0x1003984a
mov dword [ebp - 0x40], 0xfffffff6
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x18]
je 0x100397a9
cmp dword [ebp - 0x18], 0
je 0x100397a9
xor eax, eax
lea ecx, [eax + 1]
jmp 0x100397ab
xor ecx, ecx
mov eax, dword [ebp - 0x18]
imul eax, ecx
xor ecx, ecx
sub eax, dword [ebp - 0x48]
cmp eax, 0xcceb
setge cl
xor edx, edx
cmp ecx, 0xad05
setge dl
xor ecx, ecx
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp edx, eax
mov eax, dword [ebp - 0x40]
setl cl
xor edx, edx
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x40]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x40], edx
xor edx, edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x330]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x32c]
mov ecx, dword [ebp - 0x330]
mov eax, dword [ebp - 0x330]
cmp ecx, eax
setg dl
xor eax, eax
neg edx
cmp edx, 0xe235
setl al
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
inc dword [ebp - 0x330]
cmp dword [ebp - 0x330], ebx
jne 0x1003978a
xor esi, esi
push 3
inc esi
pop ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x14
push 0
pop eax
jle 0x1003974f
inc dword [ebp - 0x18]
push 0
pop eax
cmp dword [ebp - 0x18], ebx
jle 0x10039709
jmp 0x100398e3
mov dword [ebp - 0x14], 0xfbb8
mov dword [ebp - 0x40], 0xf327
mov dword [ebp - 0x1c], 0
jmp 0x10039893
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x464], 0x69a
inc dword [ebp - 0x1c]
xor eax, eax
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x10039882
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
add eax, 5
jne 0x1003997e
cmp dword [ebp - 0x14], eax
jne 0x10039980
mov ecx, eax
mov eax, dword [ebp - 0x18]
add eax, ecx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
sub eax, 0x7a5fbb
mov dword [ebp - 0x48], eax
dec dword [ebp - 0x464]
xor eax, eax
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x100398f5
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push 3
mov dword [ebp - 0x38], 0x210b999f
lea ecx, [ebp - 0xa68]
pop ebx
mov dword [ebp - 0x14], 0xc13fe66
mov dword [ebp - 0x40], 0x46b8d963
mov dword [ebp - 0x1c], 0xa12afd77
push ebx
call fcn.10019ba5
push 9
pop eax
mov dword [ebp - 4], eax
mov eax, 0x8aff65ce
mov dword [ebp - 0x48], 5
mov dword [ebp - 0x40], 0xfffffffb
mov dword [ebp - 0xfa0], eax
mov dword [ebp - 0xf9c], eax
mov dword [ebp - 0xf98], eax
mov dword [ebp - 0xf94], eax
xor eax, eax
mov dword [ebp - 0x24], 0
inc eax
cmp dword [ebp - 0x24], eax
jge 0x10039975
push 0xfffffffffffffffc
pop ecx
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x70], ecx
xor eax, eax
inc dword [ebp - 0x24]
inc eax
cmp dword [ebp - 0x24], eax
jl 0x10039963
mov dword [ebp - 0x24], 0
jmp 0x100399aa
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x100398c8
xor eax, eax
lea ecx, [eax + 1]
jmp 0x100398ca
push dword [ebp - 0x24]
lea ecx, [ebp - 0xa68]
call fcn.10019c33
mov dword [eax], 0x76cc72b7
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x10039993
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x70]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setge cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
imul ecx, dword [ebp - 0x1c], 0xae9f
mov eax, dword [ebp - 0x70]
cmp eax, ecx
mov eax, dword [ebp - 0x70]
setl dl
imul eax, edx
test eax, eax
jne 0x100399f2
cmp dword [ebp - 0x70], eax
jne 0x100399f2
mov ecx, eax
jmp 0x100399f7
xor eax, eax
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x40], eax
mov eax, 0xffff
cmp ecx, eax
lea ecx, [ebp - 0xa68]
push 2
sbb esi, esi
neg esi
call fcn.10019c33
xor edx, edx
mov dword [eax], esi
mov eax, dword [ebp - 0x70]
cmp esi, eax
mov eax, dword [ebp - 0x40]
setl dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x70]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x70]
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x70]
setg cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x70]
setge dl
xor ebx, ebx
imul ecx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x48]
setle bl
xor edx, edx
cmp ebx, eax
mov eax, dword [ebp - 0x70]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x70]
jge 0x10039a7f
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10039a82
xor eax, eax
inc eax
xor ecx, ecx
cmp eax, 0x7b364fef
mov eax, dword [ebp - 0x70]
setne cl
xor ebx, ebx
imul ecx, eax
mov eax, dword [ebp - 0x70]
push 2
imul eax, ecx
lea ecx, [ebp - 0xa68]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, 0xf4fc
setg bl
mov dword [ebp - 0xf98], ebx
call fcn.10019c33
lea ecx, [ebp - 0xa68]
mov dword [eax], ebx
or eax, 0xffffffff
mov dword [ebp - 4], eax
call fcn.10019c2e
mov dword [ebp - 0x28], 0xade89b93
lea ecx, [ebp - 0x460]
push 4
call fcn.10019ba5
mov dword [ebp - 4], 0xa
xor eax, eax
mov dword [ebp - 0x24], 8
inc eax
mov dword [ebp - 0x2c], 0xcc80fc3a
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x1c], 0
jmp 0x10039b29
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x460]
call fcn.10019c33
mov dword [eax], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10039b12
push 3
xor esi, esi
mov dword [ebp - 0x24], 0
pop ebx
inc esi
cmp dword [ebp - 0x24], ebx
jg 0x10039bc9
push ebx
lea ecx, [ebp - 0x8a4]
call fcn.10019ba5
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x1c], 0
jmp 0x10039b71
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x8a4]
call fcn.10019c33
mov dword [eax], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10039b5e
push dword [ebp - 0x24]
lea ecx, [ebp - 0x460]
call fcn.10019c33
push esi
lea ecx, [ebp - 0x8a4]
call fcn.10019c33
push esi
lea ecx, [ebp - 0x8a4]
call fcn.10019c33
push esi
lea ecx, [ebp - 0x8a4]
call fcn.10019c33
xor ecx, ecx
cmp dword [eax], ecx
sete cl
mov dword [ebp - 0x2c], ecx
lea ecx, [ebp - 0x8a4]
mov byte [ebp - 4], 0xa
call fcn.10019c2e
inc dword [ebp - 0x24]
jmp 0x10039b3c
mov dword [ebp - 0x24], 0
jmp 0x10039d9b
mov dword [ebp - 0x14], 0x9c821f9
mov byte [ebp - 0x39], 0
cmp byte [ebp - 0x39], 0
je 0x10039bf6
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetBkColor]
mov dword [ebp - 0x2c], 0
jmp 0x10039d8f
or eax, 0xffffffff
lea ecx, [ebp - 0xea4]
mov dword [ebp - 0x4c], eax
push esi
call fcn.10019ba5
xor eax, eax
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x10039c46
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xea4]
call fcn.10019c33
mov dword [eax], 0xbe2ff5ff
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x10039c22
xor esi, esi
xor eax, eax
inc esi
mov dword [ebp - 0x4c], ebx
cmp dword [ebp - 0x4c], eax
jl 0x10039d7d
mov dword [ebp - 0x20], 0xc3d6c1df
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jg 0x10039d42
mov dword [ebp - 0x28], esi
lea ecx, [ebp - 0x460]
push dword [ebp - 0x2c]
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x460]
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x460]
call fcn.10019c33
mov ecx, 0xffff944a
xor ebx, ebx
push 0
sub ecx, dword [eax]
cmp ecx, 0x652f093d
lea ecx, [ebp - 0xea4]
setg bl
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x460]
mov dword [eax], ebx
call fcn.10019c33
mov edx, dword [ebp - 0x2c]
xor ecx, ecx
cmp ebx, esi
push 2
setle cl
xor ebx, ebx
imul ecx, ecx, 0x98c2
cmp dword [eax], ecx
mov eax, dword [ebp - 0x14]
setge bl
sub ebx, 4
neg ebx
sbb ebx, ebx
inc ebx
sub edx, ebx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
sub ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x14]
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x460]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
call fcn.10019c33
mov edx, dword [ebp - 0x14]
sub edx, 0x5d01
neg edx
push 3
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, dword [eax]
pop ebx
setne cl
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x28], 0
jne 0x10039d40
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x10039c68
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10039d6f
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x10039d6c
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x10039d67
push eax
push eax
push 0xb0d
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
xor eax, eax
dec dword [ebp - 0x1c]
jns 0x10039d4f
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x10039d47
dec dword [ebp - 0x4c]
jns 0x10039c52
lea ecx, [ebp - 0xea4]
mov byte [ebp - 4], 0xa
call fcn.10019c2e
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jle 0x10039c02
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jle 0x10039bd5
or ebx, 0xffffffff
lea ecx, [ebp - 0x460]
mov dword [ebp - 4], ebx
call fcn.10019c2e
mov dword [ebp - 0x18], 0xf04b2b3a
xor eax, eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x2c], 0xc8748afa
mov dword [ebp - 0x24], 0xa9bacde9
mov dword [ebp - 0x48], 0xfffffff8
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x28], 0x2da
mov dword [ebp - 0x44], 0x15a8df04
mov dword [ebp - 0x1c], eax
jmp 0x10039dfd
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x9a8], 0x1462ccd2
inc dword [ebp - 0x1c]
xor eax, eax
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x10039dec
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp eax, 0x9a20
mov eax, dword [ebp - 0x28]
setle cl
xor edx, edx
cmp ecx, 0x87d6
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0x9a8], ecx
mov dword [ebp - 0x44], ecx
cmp dword [ebp - 0x24], eax
je 0x10039e68
mov dword [ebp - 0x40], 9
dec dword [ebp - 0x40]
jmp 0x10039e98
mov dword [ebp - 0x24], 0xffffffe9
jmp 0x10039e92
mov dword [ebp - 0x48], 0x17017a68
cmp dword [ebp - 0x48], eax
jne 0x10039e98
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x10039e8f
push eax
call dword [sym.imp.USER32.dll_DestroyCursor]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xe
jg 0x10039e71
xor esi, esi
inc esi
mov dword [ebp - 0x38], esi
cmp dword [ebp - 0x38], eax
jl 0x1003a1ca
mov dword [ebp - 0x20], esi
push 7
pop ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], 0x21e0bec0
mov dword [ebp - 0x20], 0x1d
cmp dword [ebp - 0x20], 0x13
je 0x10039f4c
mov ebx, 0xb0e1b1b5
mov dword [ebp - 0x28], 0xfffffffa
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x1c], eax
jmp 0x10039eed
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x914], 0xfffffff6
inc dword [ebp - 0x1c]
xor eax, eax
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x10039edc
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
sub edx, eax
mov eax, dword [ebp - 0x20]
neg edx
push 0
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
cmp ebx, ecx
sbb eax, eax
neg eax
mov dword [ebp - 0x914], eax
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
neg ecx
sub ecx, eax
mov dword [ebp - 0x48], ecx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x13
pop eax
push 1
pop esi
jne 0x10039ecd
or ebx, 0xffffffff
mov dword [ebp - 0x20], 0xd00585b7
mov dword [ebp - 0x2c], 0xe216
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x2c], 0x7c20
je 0x10039f78
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x48], ebx
mov eax, dword [ebp - 0x48]
push 0xfffffffffffffff7
pop ecx
cmp ecx, eax
sbb eax, eax
neg eax
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], eax
jl 0x1003a1be
mov dword [ebp - 0x4c], 5
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jge 0x10039fc1
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x154], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10039fa8
xor eax, eax
mov dword [ebp - 0x150], eax
cmp dword [ebp - 0x150], esi
jg 0x1003a006
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x10039fe1
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetKeySecurity]
mov eax, dword [ebp - 0x38]
push 0
mov ecx, dword [ebp + eax*4 - 0x284]
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x284], ecx
inc dword [ebp - 0x150]
pop eax
cmp dword [ebp - 0x150], esi
jle 0x10039fcf
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0x14
je 0x1003a1b5
mov dword [ebp - 0x24], 0x2949f4ff
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x24], eax
jmp 0x1003a12f
mov dword [ebp - 0x2c], 0x6b6feb9e
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xffffffe7
jge 0x1003a12c
mov dword [ebp - 0x1c], 0x324015fb
cmp dword [ebp - 0x38], eax
jne 0x1003a10b
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x1c], 0
je 0x1003a055
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x284], 0xc8f43836
mov eax, dword [ebp - 0x2c]
sbb ecx, ecx
xor edx, edx
neg ecx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x28]
sub edx, eax
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
cmp edx, eax
setne cl
xor eax, eax
cmp ecx, 0xfffffff9
setl al
cmp eax, esi
jae 0x1003a0bb
cmp dword [ebp - 0x1c], 0
je 0x1003a0bb
xor eax, eax
lea ecx, [eax + 1]
jmp 0x1003a0bd
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp ecx, 0x6069
setne al
sub eax, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x1003a0ee
cmp dword [ebp - 0x14], eax
je 0x1003a0ee
lea edx, [eax + 1]
jmp 0x1003a0f0
mov edx, eax
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
setne cl
sub ecx, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x1c]
jg 0x1003a10b
xor ecx, ecx
jmp 0x1003a110
xor eax, eax
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x38]
imul eax, ecx
push 0
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xffffffe7
pop eax
push 1
pop esi
jl 0x1003a039
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe9
jne 0x1003a025
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x24], 0
jne 0x1003a18d
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x154], 0
je 0x1003a157
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x280]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x24]
add edx, dword [ebp - 0x4c]
sub edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
imul ecx, dword [ebp - 0x18]
test ecx, ecx
jne 0x1003a18d
xor eax, eax
jmp 0x1003a18f
mov eax, esi
cmp eax, 0xd6242281
mov eax, dword [ebp - 0x58]
push 0
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
pop eax
setg cl
mov dword [ebp - 0x40], ecx
inc dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 0x14
jne 0x1003a013
dec dword [ebp - 0x20]
jns 0x10039f98
dec dword [ebp - 0x38]
push 0
pop eax
jns 0x10039ea7
mov eax, dword [ebp - 0x34]
push 0
mov ecx, dword [ebp + eax*4 - 0x284]
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x284], ecx
inc dword [ebp - 0x34]
pop eax
cmp dword [ebp - 0x34], esi
jle 0x1003967a
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003a20f
push eax
push 0x1adb
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPointW]
xor eax, eax
push 0xfffffffffffffff8
pop ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x58], 0x65a3ff56
cmp dword [ebp - 0x18], eax
jne 0x1003a268
mov eax, dword [ebp - 0x18]
xor edx, edx
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 ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ebx, ebx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x18]
setge cl
sub eax, ecx
add eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x18]
jne 0x1003a268
xor ecx, ecx
jmp 0x1003a26d
xor eax, eax
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x18]
imul eax, ecx
xor ecx, ecx
inc ecx
cmp eax, ecx
sbb eax, eax
neg eax
cmp eax, 0x24039b64
jg 0x1003a401
or eax, 0xffffffff
mov dword [ebp - 0x58], eax
xor eax, eax
push 0x12
pop ebx
mov dword [ebp - 0x18], eax
push 5
pop esi
cmp dword [ebp - 0x18], ebx
jg 0x1003a47d
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x40], 0xb6af4a9b
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003a2d6
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push 0x867
push 0x1faf
push 0x1ba3
push eax
call dword [sym.imp.ADVAPI32.dll_ChangeServiceConfigW]
xor ecx, ecx
xor eax, eax
inc ecx
mov dword [ebp - 0x24], esi
cmp dword [ebp - 0x24], 0x14
jg 0x1003a3ed
push 3
pop edx
mov dword [ebp - 0x40], 0xf5ea
mov dword [ebp - 0x48], 9
mov dword [ebp - 0x1c], eax
jmp 0x1003a306
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x328], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x1003a2f9
mov dword [ebp - 0x324], esi
cmp dword [ebp - 0x324], ebx
je 0x1003a3da
mov dword [ebp - 0x40], 0xfffffff6
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x18]
je 0x1003a33c
cmp dword [ebp - 0x18], 0
je 0x1003a33c
xor eax, eax
lea ecx, [eax + 1]
jmp 0x1003a33e
xor ecx, ecx
mov eax, dword [ebp - 0x18]
imul eax, ecx
xor ecx, ecx
sub eax, dword [ebp - 0x58]
cmp eax, 0xcceb
setge cl
xor edx, edx
cmp ecx, 0xad05
setge dl
xor ecx, ecx
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp edx, eax
mov eax, dword [ebp - 0x40]
setl cl
xor edx, edx
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x40]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x40], edx
xor edx, edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x324]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x320]
mov ecx, dword [ebp - 0x324]
mov eax, dword [ebp - 0x324]
cmp ecx, eax
setg dl
xor eax, eax
neg edx
cmp edx, 0xe235
setl al
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x48], eax
inc dword [ebp - 0x324]
cmp dword [ebp - 0x324], ebx
jne 0x1003a31d
push 3
pop edx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x14
push 0
pop eax
push 1
pop ecx
jle 0x1003a2e6
inc dword [ebp - 0x18]
push 0
pop eax
push 1
pop ecx
cmp dword [ebp - 0x18], ebx
jle 0x1003a2a1
jmp 0x1003a47b
mov dword [ebp - 0x14], 0xfbb8
mov dword [ebp - 0x40], 0xf327
mov dword [ebp - 0x1c], 0
jmp 0x1003a429
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x388], 0x69a
inc dword [ebp - 0x1c]
xor eax, eax
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x1003a418
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
push 5
pop esi
add eax, esi
jne 0x1003a50c
cmp dword [ebp - 0x14], eax
jne 0x1003a50e
mov ecx, eax
mov eax, dword [ebp - 0x18]
add eax, ecx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
sub eax, 0x7a5fbb
mov dword [ebp - 0x58], eax
dec dword [ebp - 0x388]
xor eax, eax
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003a48d
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push 3
pop ebx
mov dword [ebp - 0x14], 0xc13fe66
lea ecx, [ebp - 0xb40]
mov dword [ebp - 0x40], 0x46b8d963
mov dword [ebp - 0x1c], 0xa12afd77
push ebx
call fcn.10019ba5
mov dword [ebp - 4], 0xd
mov eax, 0x8aff65ce
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x40], 0xfffffffb
mov dword [ebp - 0xf80], eax
mov dword [ebp - 0xf7c], eax
mov dword [ebp - 0xf78], eax
mov dword [ebp - 0xf74], eax
xor eax, eax
mov dword [ebp - 0x24], 0
inc eax
cmp dword [ebp - 0x24], eax
jge 0x1003a503
push 0xfffffffffffffffc
pop ecx
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x68], ecx
xor eax, eax
inc dword [ebp - 0x24]
inc eax
cmp dword [ebp - 0x24], eax
jl 0x1003a4f1
mov dword [ebp - 0x24], 0
jmp 0x1003a538
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x1003a460
xor eax, eax
lea ecx, [eax + 1]
jmp 0x1003a462
push dword [ebp - 0x24]
lea ecx, [ebp - 0xb40]
call fcn.10019c33
mov dword [eax], 0x76cc72b7
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x1003a521
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x68]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setge cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
imul ecx, dword [ebp - 0x1c], 0xae9f
mov eax, dword [ebp - 0x68]
cmp eax, ecx
mov eax, dword [ebp - 0x68]
setl dl
imul eax, edx
test eax, eax
jne 0x1003a580
cmp dword [ebp - 0x68], eax
jne 0x1003a580
mov ecx, eax
jmp 0x1003a585
xor eax, eax
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x40], eax
mov eax, 0xffff
cmp ecx, eax
lea ecx, [ebp - 0xb40]
push 2
sbb esi, esi
neg esi
call fcn.10019c33
xor edx, edx
mov dword [eax], esi
mov eax, dword [ebp - 0x68]
cmp esi, eax
mov eax, dword [ebp - 0x40]
setl dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x68]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x68]
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x68]
setg cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x68]
setge dl
xor ebx, ebx
imul ecx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x58]
setle bl
xor edx, edx
cmp ebx, eax
mov eax, dword [ebp - 0x68]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x68]
jge 0x1003a60d
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x1003a610
xor eax, eax
inc eax
xor ecx, ecx
cmp eax, 0x7b364fef
mov eax, dword [ebp - 0x68]
setne cl
xor ebx, ebx
imul ecx, eax
mov eax, dword [ebp - 0x68]
push 2
imul eax, ecx
lea ecx, [ebp - 0xb40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, 0xf4fc
setg bl
mov dword [ebp - 0xf78], ebx
call fcn.10019c33
lea ecx, [ebp - 0xb40]
mov dword [eax], ebx
or eax, 0xffffffff
mov dword [ebp - 4], eax
call fcn.10019c2e
push 4
lea ecx, [ebp - 0x3c8]
call fcn.10019ba5
mov dword [ebp - 4], 0xe
xor eax, eax
mov dword [ebp - 0x24], 8
inc eax
mov dword [ebp - 0x2c], 0xcc80fc3a
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x1c], 0
jmp 0x1003a6b0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c8]
call fcn.10019c33
mov dword [eax], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x1003a699
push 3
xor esi, esi
mov dword [ebp - 0x24], 0
pop ebx
inc esi
cmp dword [ebp - 0x24], ebx
jg 0x1003a750
push ebx
lea ecx, [ebp - 0x974]
call fcn.10019ba5
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x1c], 0
jmp 0x1003a6f8
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x974]
call fcn.10019c33
mov dword [eax], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1003a6e5
push dword [ebp - 0x24]
lea ecx, [ebp - 0x3c8]
call fcn.10019c33
push esi
lea ecx, [ebp - 0x974]
call fcn.10019c33
push esi
lea ecx, [ebp - 0x974]
call fcn.10019c33
push esi
lea ecx, [ebp - 0x974]
call fcn.10019c33
xor ecx, ecx
cmp dword [eax], ecx
sete cl
mov dword [ebp - 0x2c], ecx
lea ecx, [ebp - 0x974]
mov byte [ebp - 4], 0xe
call fcn.10019c2e
inc dword [ebp - 0x24]
jmp 0x1003a6c3
mov dword [ebp - 0x24], 0
jmp 0x1003a922
mov dword [ebp - 0x14], 0x9c821f9
mov byte [ebp - 0x39], 0
cmp byte [ebp - 0x39], 0
je 0x1003a77d
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetBkColor]
mov dword [ebp - 0x2c], 0
jmp 0x1003a916
or eax, 0xffffffff
lea ecx, [ebp - 0xcdc]
mov dword [ebp - 0x4c], eax
push esi
call fcn.10019ba5
xor eax, eax
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1003a7cd
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xcdc]
call fcn.10019c33
mov dword [eax], 0xbe2ff5ff
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x1003a7a9
xor esi, esi
xor eax, eax
inc esi
mov dword [ebp - 0x4c], ebx
cmp dword [ebp - 0x4c], eax
jl 0x1003a904
mov dword [ebp - 0x20], 0xc3d6c1df
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jg 0x1003a8c9
mov dword [ebp - 0x28], esi
lea ecx, [ebp - 0x3c8]
push dword [ebp - 0x2c]
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x3c8]
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x3c8]
call fcn.10019c33
mov ecx, 0xffff944a
xor ebx, ebx
push 0
sub ecx, dword [eax]
cmp ecx, 0x652f093d
lea ecx, [ebp - 0xcdc]
setg bl
call fcn.10019c33
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x3c8]
mov dword [eax], ebx
call fcn.10019c33
mov edx, dword [ebp - 0x2c]
xor ecx, ecx
cmp ebx, esi
push 2
setle cl
xor ebx, ebx
imul ecx, ecx, 0x98c2
cmp dword [eax], ecx
mov eax, dword [ebp - 0x14]
setge bl
sub ebx, 4
neg ebx
sbb ebx, ebx
inc ebx
sub edx, ebx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
sub ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x14]
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x3c8]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
call fcn.10019c33
mov edx, dword [ebp - 0x14]
sub edx, 0x5d01
neg edx
push 3
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, dword [eax]
pop ebx
setne cl
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x28], 0
jne 0x1003a8c7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x1003a7ef
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x1003a8f6
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x1003a8f3
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003a8ee
push eax
push eax
push 0xb0d
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
xor eax, eax
dec dword [ebp - 0x1c]
jns 0x1003a8d6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x1003a8ce
dec dword [ebp - 0x4c]
jns 0x1003a7d9
lea ecx, [ebp - 0xcdc]
mov byte [ebp - 4], 0xe
call fcn.10019c2e
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jle 0x1003a789
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jle 0x1003a75c
or esi, 0xffffffff
lea ecx, [ebp - 0x3c8]
mov dword [ebp - 4], esi
call fcn.10019c2e
mov dword [ebp - 0x2c], 0xc45cdbe8
xor eax, eax
mov dword [ebp - 0x2c], 0xc8748afa
inc eax
mov dword [ebp - 0x24], 0xa9bacde9
mov dword [ebp - 0x58], 0xfffffff8
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x40], 0x2da
mov dword [ebp - 0x28], 0x15a8df04
mov dword [ebp - 0x1c], 0
jmp 0x1003a989
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x9b0], 0x1462ccd2
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x1003a975
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp eax, 0x9a20
mov eax, dword [ebp - 0x40]
setle cl
xor edx, edx
cmp ecx, 0x87d6
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
mov dword [ebp - 0x9b0], ecx
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x24], eax
je 0x1003a9f1
mov dword [ebp - 0x40], 9
dec dword [ebp - 0x40]
jmp 0x1003aa21
mov dword [ebp - 0x24], 0xffffffe9
jmp 0x1003aa1b
mov dword [ebp - 0x58], 0x17017a68
cmp dword [ebp - 0x58], eax
jne 0x1003aa21
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003aa18
push eax
call dword [sym.imp.USER32.dll_DestroyCursor]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xe
jg 0x1003a9fa
mov dword [ebp - 0x40], 0x76a17913
xor ecx, ecx
inc ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x58], 7
mov dword [ebp - 0x58], 0x21e0bec0
mov dword [ebp - 0x20], 0x1d
cmp dword [ebp - 0x20], 0x13
je 0x1003aad1
mov esi, 0xb0e1b1b5
mov dword [ebp - 0x28], 0xfffffffa
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x1c], eax
jmp 0x1003aa72
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x854], 0xfffffff6
inc dword [ebp - 0x1c]
xor eax, eax
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x1003aa61
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
sub edx, eax
mov eax, dword [ebp - 0x20]
neg edx
push 0
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
cmp esi, ecx
sbb eax, eax
neg eax
mov dword [ebp - 0x854], eax
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
neg ecx
sub ecx, eax
mov dword [ebp - 0x58], ecx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x13
pop eax
push 1
pop ecx
jne 0x1003aa52
or esi, 0xffffffff
mov dword [ebp - 0x60], 0xd157
mov dword [ebp - 0x2c], 0xe216
mov dword [ebp - 0x58], 0
cmp dword [ebp - 0x2c], 0x7c20
je 0x1003ab01
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x58], esi
mov eax, dword [ebp - 0x58]
push 0xfffffffffffffff7
pop ecx
cmp ecx, eax
sbb eax, eax
neg eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x18], 0xf2c2
mov dword [ebp - 0x1c], 0
jmp 0x1003ab34
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xc24], 0x1a4e6659
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x1003ab23
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
dec eax
neg eax
push 0
sbb eax, eax
neg eax
sub eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
neg eax
sbb eax, eax
inc eax
pop eax
sets al
add eax, 0x1449c9fb
sub ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0x3026d8d
setge al
cmp dword [ebp - 0x18], eax
jle 0x1003abaf
xor eax, eax
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], al
je 0x1003ab8c
push 0xe12
push eax
call dword [sym.imp.KERNEL32.dll_WaitNamedPipeA]
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x1003aba7
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003aba4
push eax
push eax
call dword [sym.imp.USER32.dll_LoadMenuW]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xc
jge 0x1003ab91
jmp 0x1003abe0
xor eax, eax
inc eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x18], 0
jmp 0x1003abdb
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0xc24]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xc24], ecx
xor eax, eax
mov dword [ebp - 0x58], ecx
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jle 0x1003abbe
xor ebx, ebx
mov dword [ebp - 0x1c], 0
inc ebx
cmp dword [ebp - 0x1c], 2
jge 0x1003abff
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x294], ebx
inc dword [ebp - 0x1c]
jmp 0x1003abea
push ebx
lea ecx, [ebp - 0x4d0]
call fcn.10019ba5
mov dword [ebp - 4], 0x11
xor eax, eax
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x30], 0x23aaf5bf
mov dword [ebp - 0x2c], 0x2c41ac3d
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1003ac59
push 7
pop esi
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x4d0]
call fcn.10019c33
mov dword [eax], esi
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x1003ac39
xor eax, eax
or esi, 0xffffffff
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003ac6c
push eax
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegGetKeySecurity]
mov eax, dword [ebp - 0x2c]
inc dword [ebp - 0x2c]
test eax, eax
je 0x1003acab
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x4d0]
mov eax, dword [ebp - 0x40]
push 0
call fcn.10019c33
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x4d0]
push 0
call fcn.10019c33
cmp dword [eax], 0
je 0x1003acab
push 0
lea ecx, [ebp - 0x4d0]
call fcn.10019c33
xor eax, eax
inc eax
cmp dword [ebp - 0x58], eax
jle 0x1003acc0
push 0
lea ecx, [ebp - 0x4d0]
call fcn.10019c33
mov eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x4d0]
push 0
call fcn.10019c33
lea ecx, [ebp - 0x4d0]
mov eax, dword [eax]
dec eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 4], esi
call fcn.10019c2e
xor eax, eax
mov dword [ebp - 0x2c], 0
inc eax
cmp dword [ebp - 0x2c], eax
jg 0x1003d87c
push 4
pop ebx
mov dword [ebp - 0x20], 0x5540d7f8
lea ecx, [ebp - 0xe14]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x30], esi
push ebx
call fcn.10019ba5
push ebx
lea ecx, [ebp - 0xa80]
mov dword [ebp - 4], 0x12
call fcn.10019ba5
xor eax, eax
mov byte [ebp - 4], 0x13
inc eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x24], 0
jmp 0x1003ad53
push dword [ebp - 0x24]
lea ecx, [ebp - 0xe14]
call fcn.10019c33
push 7
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x1003ad3d
mov dword [ebp - 0x24], 0
jmp 0x1003ad78
push dword [ebp - 0x24]
lea ecx, [ebp - 0xa80]
call fcn.10019c33
mov dword [eax], 0xfffffffe
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x1003ad61
push 3
mov dword [ebp - 0x20], 0xffffffef
pop esi
cmp dword [ebp - 0x20], 0xffffffe4
jl 0x1003aef1
mov dword [ebp - 0x1c], 0xdce9d05b
xor eax, eax
mov dword [ebp - 0x30], 0
inc eax
mov dword [ebp - 0x30], 0xf0842170
mov dword [ebp - 0x30], 0x244c3f4
mov dword [ebp - 0x30], 0xc2184e5a
mov dword [ebp - 0x28], 6
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x1c], 0
cmp dword [ebp - 0x1c], esi
jge 0x1003ade2
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x16e8], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1003adcd
xor eax, eax
inc eax
mov dword [ebp - 0x1c], 0
cmp dword [ebp - 0x1c], 0xfffffff9
jg 0x1003aee9
jmp 0x1003adf8
xor eax, eax
inc eax
mov dword [ebp - 0x40], 0x357257ea
mov dword [ebp - 0x48], 0x891f433c
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x24], 0
jmp 0x1003ae26
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x344], 0xfffffff9
xor eax, eax
inc dword [ebp - 0x24]
inc eax
cmp dword [ebp - 0x24], eax
jl 0x1003ae12
mov dword [ebp - 0x24], 0
cmp dword [ebp - 0x24], ebx
jge 0x1003ae4f
xor ebx, ebx
inc ebx
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1748], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x1003ae3a
jmp 0x1003ae52
xor ebx, ebx
inc ebx
mov eax, dword [ebp - 0x344]
xor edx, edx
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setge dl
xor eax, eax
sub edx, 0x52dd8607
jne 0x1003ae79
mov ecx, eax
cmp dword [ebp - 0x344], eax
je 0x1003ae7b
mov ecx, ebx
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0xa80]
push eax
call fcn.10019c33
push 2
lea ecx, [ebp - 0xe14]
call fcn.10019c33
xor ecx, ecx
and dword [eax], 0
mov eax, dword [ebp - 0x40]
inc eax
cmp eax, 0x5752783d
setl cl
add ecx, dword [ebp - 0x28]
imul eax, ecx, 0xfffe
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
inc dword [ebp - 0x28]
test eax, eax
je 0x1003aecd
mov dword [ebp - 0x48], 0xc8e4c12f
cmp dword [ebp - 0x48], 0
jne 0x1003aee6
jmp 0x1003aed6
xor eax, eax
inc eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x48], eax
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff9
push 4
pop ebx
jle 0x1003adf5
push 4
pop ebx
dec dword [ebp - 0x20]
jmp 0x1003ad87
mov dword [ebp - 0x4c], 0x1d
jmp 0x1003af0f
push 2
lea ecx, [ebp - 0xa80]
call fcn.10019c33
cmp dword [eax], 0
jne 0x1003af15
dec dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 0x1a
jne 0x1003aefa
lea ecx, [ebp - 0xa80]
call fcn.10019c2e
or eax, 0xffffffff
lea ecx, [ebp - 0xe14]
mov dword [ebp - 4], eax
call fcn.10019c2e
mov dword [ebp - 0x34], 0x210b999f
lea ecx, [ebp - 0x18c]
push 2
call fcn.10019ba5
mov dword [ebp - 4], 0x14
xor eax, eax
mov dword [ebp - 0x28], 0x50169ff9
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], 0x7a22f0f5
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x1003af89
push dword [ebp - 0x24]
lea ecx, [ebp - 0x18c]
call fcn.10019c33
push 7
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x1003af6b
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x1003af9f
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x16dc], 0x29794902
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jl 0x1003af8e
xor ebx, ebx
lea ecx, [ebp - 0x18c]
inc ebx
push ebx
call fcn.10019c33
push ebx
lea ecx, [ebp - 0x18c]
and dword [eax], 0
call fcn.10019c33
cmp dword [eax], 0xffffffed
jge 0x1003b1b9
or edx, 0xffffffff
xor eax, eax
mov dword [ebp - 0x14], edx
inc eax
mov dword [ebp - 0x1c], 0xa9d2
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x144], 0x78a4911c
mov dword [ebp - 0x140], 0x78a4911c
mov dword [ebp - 0x13c], 0x78a4911c
push 2
mov dword [ebp - 0x138], 0x78a4911c
mov dword [ebp - 0x24], 0
pop ecx
jmp 0x1003b023
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1684], 0xfffffffa
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x1003b012
mov dword [ebp - 0x24], 0
jmp 0x1003b03e
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xc2c], edx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x1003b031
push 0
lea ecx, [ebp - 0x18c]
call fcn.10019c33
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x18c]
mov eax, dword [ebp - 0x14]
xor ebx, ebx
mov eax, dword [ebp - 0x1c]
inc ebx
mov eax, dword [ebp - 0x1c]
push ebx
call fcn.10019c33
push 0
lea ecx, [ebp - 0x18c]
call fcn.10019c33
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x18c]
mov eax, dword [ebp - 0x1c]
push ebx
call fcn.10019c33
push ebx
lea ecx, [ebp - 0x18c]
mov esi, dword [eax]
dec esi
call fcn.10019c33
xor edx, edx
push 0
cmp esi, dword [eax]
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
sub edx, 0x497f3c88
cmp edx, eax
setl cl
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x18c]
call fcn.10019c33
xor edx, edx
cmp dword [eax], edx
mov eax, dword [ebp - 0x14]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
sub eax, 0x4aebfb04
je 0x1003b0f1
cmp dword [ebp - 0x40], 0
je 0x1003b0f1
xor eax, eax
inc eax
mov esi, eax
jmp 0x1003b0f6
xor eax, eax
xor esi, esi
inc eax
push eax
lea ecx, [ebp - 0x18c]
call fcn.10019c33
cmp esi, dword [eax]
jg 0x1003b178
xor eax, eax
lea ecx, [ebp - 0x1174]
inc eax
push eax
call fcn.10019ba5
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x24], 0
jmp 0x1003b139
push dword [ebp - 0x24]
lea ecx, [ebp - 0x1174]
call fcn.10019c33
mov dword [eax], 0x43c6
inc dword [ebp - 0x24]
xor eax, eax
inc eax
cmp dword [ebp - 0x24], eax
jl 0x1003b122
mov dword [ebp - 0x24], 0
jmp 0x1003b15b
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x16f8], 0x1f283019
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x1003b14a
dec dword [ebp - 0xc2c]
lea ecx, [ebp - 0x1174]
mov byte [ebp - 4], 0x14
call fcn.10019c2e
jmp 0x1003b190
xor eax, eax
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], al
je 0x1003b190
push eax
push 0x1987
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
xor ebx, ebx
lea ecx, [ebp - 0x18c]
inc ebx
push ebx
call fcn.10019c33
push ebx
lea ecx, [ebp - 0x18c]
dec dword [eax]
call fcn.10019c33
cmp dword [eax], 0xffffffed
jl 0x1003afcb
push 3
pop esi
or eax, 0xffffffff
lea ecx, [ebp - 0x18c]
mov dword [ebp - 4], eax
call fcn.10019c2e
mov dword [ebp - 0x44], 0xade89b93
xor eax, eax
mov dword [ebp - 0x34], 0xc03342eb
mov dword [ebp - 0x30], 0x9acd4098
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], al
je 0x1003b1f3
push eax
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
xor eax, eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xffffffea
jg 0x1003b311
mov dword [ebp - 0x4c], 0xc3c69aed
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b217
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov dword [ebp - 0x4c], 0x1d
jmp 0x1003b2f7
movdqa xmm0, xmmword [0x10007db0]
lea eax, [ebp - 0x136c]
push eax
lea eax, [ebp - 0x137c]
push eax
lea ecx, [ebp - 0x158c]
movdqu xmmword [ebp - 0x137c], xmm0
call fcn.10019c42
lea ecx, [ebp - 0x1cd]
mov esi, eax
call fcn.10008de3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x1050]
push dword [esi]
call fcn.10019c04
xor eax, eax
mov dword [ebp - 4], 0x16
push 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1c], eax
pop esi
jmp 0x1003b2de
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], eax
jl 0x1003b2b6
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b29b
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
xor eax, eax
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b2b1
push 0x616
call dword [sym.imp.USER32.dll_GetKeyboardType]
xor eax, eax
dec dword [ebp - 0x20]
jns 0x1003b289
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], esi
jg 0x1003b2db
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1050]
call fcn.10019c33
cmp dword [eax], 0
jne 0x1003b2d9
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x1003b2be
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x1003b27e
or eax, 0xffffffff
lea ecx, [ebp - 0x1050]
mov dword [ebp - 4], eax
call fcn.10019c2e
dec dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 0x19
je 0x1003b223
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffea
push 0
pop eax
jle 0x1003b200
mov dword [ebp - 0x50], 0xf04b2b3a
or ecx, 0xffffffff
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b338
push eax
push 0x1595
call edi
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x1003b360
mov dword [ebp - 0x58], 0xedc7555b
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b356
push eax
call dword [sym.imp.KERNEL32.dll_EncodePointer]
xor eax, eax
mov dword [ebp - 0x58], 8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x17
jle 0x1003b33d
mov dword [ebp - 0x30], eax
mov ecx, 0x7a876e6b
mov dword [ebp - 0x28], 0x4446
mov dword [ebp - 0x40], 8
mov eax, dword [ebp - 0x28]
sub ecx, eax
je 0x1003b3eb
mov dword [ebp - 0x1c], 0xec79cf18
mov eax, 0xffff
mov dword [ebp - 0x58], 0xde4bf748
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
neg eax
jne 0x1003b3c7
cmp dword [ebp - 0x28], 0xcc92ea21
sbb eax, eax
neg eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
inc eax
cmp eax, 0x63cc1dab
jg 0x1003b3c7
xor edx, edx
jmp 0x1003b3cc
xor eax, eax
lea edx, [eax + 1]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
add eax, edx
add ecx, eax
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x1c]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x48], ecx
jmp 0x1003b40d
xor eax, eax
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], al
je 0x1003b40f
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
push 0
push 0xbd8
call dword [sym.imp.GDI32.dll_SetWinMetaFileBits]
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x1c], 0x60b4ffb8
mov dword [ebp - 0x1c], eax
inc ebx
cmp dword [ebp - 0x1c], ebx
jge 0x1003b43f
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x944], 0xc64a
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x1003b421
xor ebx, ebx
xor eax, eax
inc ebx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jg 0x1003b45f
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x944], 0
jne 0x1003b45d
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0
jle 0x1003b447
xor eax, eax
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b470
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
xor eax, eax
mov dword [ebp - 0x34], ebx
cmp dword [ebp - 0x34], eax
jl 0x1003d647
jmp 0x1003b483
push 3
xor eax, eax
pop esi
mov ecx, 0x2751c76d
mov dword [ebp - 0x64c], ecx
mov dword [ebp - 0x648], ecx
mov dword [ebp - 0x644], ecx
mov dword [ebp - 0x640], ecx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x40], 0xed08e159
mov dword [ebp - 0x58], 0x3ae5685e
mov dword [ebp - 0x1c], eax
jmp 0x1003b4c7
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xe4], 0xb0bf
inc dword [ebp - 0x1c]
xor eax, eax
inc eax
cmp dword [ebp - 0x1c], eax
jl 0x1003b4b6
mov eax, dword [ebp - 0x644]
mov eax, dword [ebp - 0x64c]
mov eax, dword [ebp - 0xe4]
mov eax, dword [ebp - 0x644]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x64c]
mov eax, dword [ebp - 0x644]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xe4]
mov eax, dword [ebp - 0xe4]
mov eax, dword [ebp - 0x64c]
mov eax, dword [ebp - 0xe4]
xor eax, eax
cmp dword [ebp - 0xe4], 0x2071
jge 0x1003b624
mov dword [ebp - 0x1c], 2
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], eax
jg 0x1003b5a8
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 2
jge 0x1003b551
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x4c]
mov dword [ebp + eax*4 - 0x9d8], ecx
inc dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 2
jl 0x1003b53e
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
jne 0x1003b55f
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x9d8]
xor edx, edx
mov eax, dword [ebp - 0x9d4]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setg dl
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x9d4]
add eax, dword [ebp - 0x40]
mov dword [ebp - 0x58], eax
xor eax, eax
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], al
je 0x1003b59b
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
push 0
pop eax
jle 0x1003b532
xor eax, eax
mov dword [ebp - 0x4c], 0xd00585b7
xor ebx, ebx
mov dword [ebp - 0x4c], 0x8ade19d2
inc ebx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1003b5dd
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x46c], ebx
xor eax, eax
inc dword [ebp - 0x1c]
inc eax
push eax
pop ebx
cmp dword [ebp - 0x1c], eax
jl 0x1003b5c1
xor ebx, ebx
xor eax, eax
inc ebx
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b5ef
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
xor eax, eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], eax
jg 0x1003b616
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp + eax*4 - 0x46c]
mov eax, dword [ebp - 0x4c]
mov dword [ebp + eax*4 - 0x46c], ecx
inc dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 0
jle 0x1003b5f7
xor eax, eax
mov dword [ebp - 0x4c], ebx
cmp dword [ebp - 0x4c], eax
jl 0x1003d63e
jmp 0x1003b652
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xfffffff8
jne 0x1003b5a6
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b648
push 0x163
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
xor eax, eax
dec dword [ebp - 0x24]
jmp 0x1003b627
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x1c], 0xffffffee
jmp 0x1003b66d
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], eax
jne 0x1003b673
cmp dword [ebp - 0x1c], 0xffffffe8
je 0x1003b662
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x39], 0
je 0x1003b697
dec dword [ebp - 0x34]
jns 0x1003b47e
push 2
lea ecx, [ebp - 0x174]
call fcn.10019ba5
mov dword [ebp - 4], 0x2a
mov dword [ebp - 0x34], 0
jmp 0x1003d67b
push dword [ebp - 0x34]
lea ecx, [ebp - 0x174]
call fcn.10019c33
mov dword [eax], 0x5b57
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 2
jl 0x1003d664
mov dword [ebp - 0x34], 0
jmp 0x1003d694
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x80], ebx
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], ebx
jl 0x1003d68a
mov dword [ebp - 0x80], ebx
cmp dword [ebp - 0x80], 0
jl 0x1003d843
mov dword [ebp - 0x1c], 0x1b16eb2d
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x14], 0x279329bf
push dword [ebp - 0x80]
call fcn.10019c33
push 0
lea ecx, [ebp - 0x174]
call fcn.10019c33
mov ecx, dword [ebp - 0x80]
push dword [ebp - 0x80]
mov eax, dword [eax]
sub eax, ecx
mov ecx, 0xffff
sub eax, 0x520d67ab
cmp ecx, eax
lea ecx, [ebp - 0x174]
sbb esi, esi
neg esi
call fcn.10019c33
xor ebx, ebx
lea ecx, [ebp - 0x174]
cmp esi, dword [eax]
setg bl
xor eax, eax
inc eax
push eax
call fcn.10019c33
xor ecx, ecx
cmp ebx, dword [eax]
setle cl
xor ebx, ebx
mov dword [ebp - 0x30], ecx
inc ebx
push ebx
lea ecx, [ebp - 0x174]
call fcn.10019c33
mov edx, dword [ebp - 0x30]
xor ecx, ecx
push 0xfffffffffffffffc
cmp edx, dword [eax]
pop eax
push dword [ebp - 0x80]
setne cl
cmp ecx, eax
lea ecx, [ebp - 0x174]
sbb esi, esi
neg esi
call fcn.10019c33
xor ecx, ecx
cmp esi, dword [eax]
setl cl
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x174]
push dword [ebp - 0x80]
call fcn.10019c33
mov ecx, dword [ebp - 0x1c]
xor edx, edx
imul ecx, dword [ebp - 0x80]
push dword [ebp - 0x80]
cmp dword [eax], ecx
lea ecx, [ebp - 0x174]
setg dl
cmp edx, 0xe6d54ec7
sbb esi, esi
inc esi
call fcn.10019c33
push dword [ebp - 0x80]
lea ecx, [ebp - 0x174]
mov edi, dword [eax]
imul edi, esi
call fcn.10019c33
xor ecx, ecx
cmp edi, dword [eax]
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x80]
setne cl
add eax, ecx
imul edx, eax
xor ecx, ecx
mov eax, dword [ebp - 0x80]
cmp edx, eax
push 0
setl cl
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x174]
mov eax, dword [ebp - 0x28]
call fcn.10019c33
push 0
lea ecx, [ebp - 0x174]
call fcn.10019c33
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x14], 0x54569ce3
xor eax, eax
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], eax
jl 0x1003d83a
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], eax
jl 0x1003d80b
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003d806
push eax
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xor eax, eax
dec dword [ebp - 0x14]
jns 0x1003d7ef
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003d835
push eax
push 0x1ba6
push 0xe6c
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetViewportExtEx]
xor eax, eax
dec dword [ebp - 0x1c]
jns 0x1003d7e7
dec dword [ebp - 0x80]
jns 0x1003d6a6
or esi, 0xffffffff
lea ecx, [ebp - 0x174]
mov dword [ebp - 4], esi
call fcn.10019c2e
mov eax, dword [ebp - 0x2c]
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov ecx, dword [ebp + eax*4 - 0x294]
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x294], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jle 0x1003acf7
jmp 0x1003d87f
xor ebx, ebx
inc ebx
push 3
pop esi
push esi
lea ecx, [ebp - 0xd0c]
call fcn.10019ba5
mov dword [ebp - 4], 0x2b
mov dword [ebp - 0x1c], 8
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x14], 0
jmp 0x1003d8be
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd0c]
call fcn.10019c33
or ecx, 0xffffffff
mov dword [eax], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003d8a8
mov dword [ebp - 0x1c], 0
jmp 0x1003d8e2
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xd0c]
call fcn.10019c33
cmp dword [eax], 0
jne 0x1003d8e8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jle 0x1003d8cc
or eax, 0xffffffff
lea ecx, [ebp - 0xd0c]
mov dword [ebp - 4], eax
call fcn.10019c2e
mov dword [ebp - 0x28], 0xe56f9b2c
lea ecx, [ebp - 0xe2c]
push 4
call fcn.10019ba5
mov dword [ebp - 4], 0x2c
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x40], 0x6f944dcd
mov dword [ebp - 0x30], 0x2dfce95
mov dword [ebp - 0x14], 0
jmp 0x1003d945
push dword [ebp - 0x14]
call fcn.10019c33
mov dword [eax], 0xd00585b7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
lea ecx, [ebp - 0xe2c]
jl 0x1003d934
mov eax, dword [ebp - 0x28]
dec dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
mov esi, dword [ebp - 0x1c]
push 0
call fcn.10019c33
push 0xfffffffffffffffc
pop ecx
xor edx, edx
mov dword [eax], esi
mov eax, dword [ebp - 0x1c]
sub ecx, eax
add ecx, dword [ebp - 0x28]
imul ecx, dword [ebp - 0x1c]
imul ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
or esi, 0xffffffff
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0xe2c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x30], 0xfffffffa
mov dword [ebp - 4], esi
call fcn.10019c2e
mov byte [ebp - 0xd], 0
lea ecx, [ebp - 0x6a0]
mov eax, 0x33fcb50b
mov dword [ebp - 0xf60], eax
mov dword [ebp - 0xf5c], eax
mov dword [ebp - 0xf58], eax
mov dword [ebp - 0xf54], eax
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x54], ebx
push 0xfffffffffffffff8
pop eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x44], 0x8ef6b8f3
mov dword [ebp - 0x30], 0xe164caf1
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x50], 0xfffffffb
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], 8
mov dword [ebp - 0x4c], 0xb6f65e79
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x1c], ebx
push 2
call fcn.10019ba5
mov dword [ebp - 4], 0x2d
lea ecx, [ebp - 0xebc]
mov dword [ebp - 0x40], 0xd514
push ebx
call fcn.10019ba5
mov byte [ebp - 4], 0x2e
mov dword [ebp - 0x2c], 5
mov dword [ebp - 0x18], 0
jmp 0x1003da65
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10dc], 0x96e6a373
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x1003da54
mov dword [ebp - 0x18], 0
jmp 0x1003da85
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1134], 0x8c55
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1003da74
mov dword [ebp - 0x18], 0
jmp 0x1003daa7
push dword [ebp - 0x18]
lea ecx, [ebp - 0x6a0]
call fcn.10019c33
mov dword [eax], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1003da94
mov dword [ebp - 0x18], 0
jmp 0x1003dac7
push dword [ebp - 0x18]
call fcn.10019c33
mov dword [eax], 0xd4463028
inc dword [ebp - 0x18]
lea ecx, [ebp - 0xebc]
cmp dword [ebp - 0x18], ebx
jl 0x1003dab6
dec dword [ebp - 0x40]
push 0
call fcn.10019c33
mov ecx, dword [ebp - 0x1130]
mov edx, dword [eax]
sub ecx, edx
lea ecx, [edx + 1]
mov dword [eax], ecx
je 0x1003dafa
mov eax, dword [ebp - 0x1c]
mov edx, ebx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
jmp 0x1003dafc
xor edx, edx
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x30]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x20]
cmp eax, ebx
mov eax, dword [ebp - 0x54]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x54], ecx
cmp dword [ebp - 0x54], 0
je 0x1003db46
push ebx
lea ecx, [ebp - 0x6a0]
call fcn.10019c33
mov eax, dword [ebp - 0x14]
xor edx, edx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x40], 0x87bb6abd
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x4c]
inc ecx
cmp ecx, eax
mov eax, 0xffff
setne dl
sub eax, edx
je 0x1003db76
mov eax, dword [ebp - 0x10d0]
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x1c], 0xffffffeb
cmp dword [ebp - 0x1c], 0xffffffe9
jle 0x1003dccc
push 4
lea ecx, [ebp - 0xd24]
call fcn.10019ba5
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x1088]
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x30], 0xfffffffa
push 3
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x44], esi
pop esi
push esi
call fcn.10019ba5
mov byte [ebp - 4], 0x30
mov dword [ebp - 0x34], 0
jmp 0x1003dbe6
push dword [ebp - 0x34]
lea ecx, [ebp - 0xd24]
call fcn.10019c33
mov dword [eax], 5
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 4
jl 0x1003dbcf
mov dword [ebp - 0x34], 0
jmp 0x1003dc0c
push dword [ebp - 0x34]
lea ecx, [ebp - 0x1088]
call fcn.10019c33
mov dword [eax], 0x82999945
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], esi
jl 0x1003dbf5
push ebx
lea ecx, [ebp - 0xd24]
call fcn.10019c33
push 0
lea ecx, [ebp - 0x6a0]
inc dword [eax]
mov eax, dword [ebp - 0x40]
dec dword [ebp - 0x2c]
call fcn.10019c33
mov ecx, dword [ebp - 0x2c]
xor edx, edx
cmp ecx, 0x332
lea ecx, [ebp - 0x6a0]
push ebx
setg dl
sub edx, dword [eax]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x24]
call fcn.10019c33
xor eax, eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], eax
jne 0x1003dc67
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x6a0]
push ebx
call fcn.10019c33
mov edx, dword [ebp - 0x10d8]
mov esi, eax
mov ecx, dword [ebp - 0xf58]
xor eax, eax
cmp ecx, edx
setle al
xor ecx, ecx
cmp eax, 0x66360ccd
mov eax, dword [ebp - 0x44]
setg cl
mov dword [esi], ecx
lea ecx, [ebp - 0x1088]
mov dword [ebp - 0x10d0], eax
call fcn.10019c2e
lea ecx, [ebp - 0xd24]
mov byte [ebp - 4], 0x2e
call fcn.10019c2e
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xffffffe9
push 0xffffffffffffffff
pop esi
jg 0x1003db8e
or esi, esi
lea ecx, [ebp - 0xebc]
call fcn.10019c2e
lea ecx, [ebp - 0x6a0]
mov dword [ebp - 4], esi
call fcn.10019c2e
cmp byte [ebp - 0xd], 0
je 0x1003de77
mov dword [ebp - 0x24], 0xdb5c
mov dword [ebp - 0x40], 0xa927213e
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x54], 0xcb314b81
mov dword [ebp - 0x28], 0x4763
push 0xfffffffffffffffd
pop eax
mov dword [ebp - 0x7dc], eax
mov dword [ebp - 0x7d8], eax
mov dword [ebp - 0x7d4], eax
mov dword [ebp - 0x7d0], eax
push 3
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], 0
pop ecx
jmp 0x1003dd49
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x5c0], 0xfffffffb
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], ecx
jl 0x1003dd38
mov dword [ebp - 0x34], 0
jmp 0x1003dd68
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x11d4], 0xd90538e0
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], ecx
jl 0x1003dd57
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], 0x624ec75
mov eax, dword [ebp - 0x44]
imul eax, eax, 0xdf3
mov dword [ebp - 0x5c0], eax
mov ecx, dword [ebp - 0x24]
sub ecx, eax
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, 0xfff6
setl dl
sub edx, dword [ebp - 0x24]
neg edx
sbb edx, edx
inc edx
cmp eax, edx
sbb eax, eax
neg eax
mov dword [ebp - 0x54], eax
jne 0x1003ddb6
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x5c0]
mov dword [ebp - 0x40], 0
mov edx, dword [ebp - 0x5c0]
mov eax, dword [ebp - 0x28]
imul edx, eax
mov eax, dword [ebp - 0x40]
cmp eax, edx
setne cl
cmp ecx, dword [ebp - 0x24]
je 0x1003ddea
mov eax, dword [ebp - 0x5c0]
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x7d8]
mov eax, dword [ebp - 0x7d8]
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x7d8]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x7d8]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x11d0], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x5c0]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x7d4]
mov eax, dword [ebp - 0x5bc]
mov eax, dword [ebp - 0x11d0]
mov eax, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x5b8], 0xfffffffb
push eax
push 0x1adb
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPointW]
push 4
lea ecx, [ebp - 0x79c]
call fcn.10019ba5
mov dword [ebp - 4], 0x31
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], 0x5b49d585
mov dword [ebp - 0x34], 0
jmp 0x1003deb5
push dword [ebp - 0x34]
lea ecx, [ebp - 0x79c]
call fcn.10019c33
mov dword [eax], 0xfffffffa
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 4
jl 0x1003de9e
mov dword [ebp - 0x34], 0
jmp 0x1003ded1
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x162c], ebx
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 2
jl 0x1003dec4
push 3
pop edi
mov dword [ebp - 0x2c], edi
cmp dword [ebp - 0x2c], 0
jl 0x1003df49
mov dword [ebp - 0x28], esi
lea ecx, [ebp - 0x79c]
push dword [ebp - 0x2c]
call fcn.10019c33
xor ebx, ebx
cmp dword [eax], ebx
jne 0x1003df22
push edi
lea ecx, [ebp - 0x79c]
call fcn.10019c33
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x79c]
call fcn.10019c33
cmp dword [eax], ebx
jne 0x1003df22
xor eax, eax
cmp dword [ebp - 0x2c], eax
jne 0x1003df22
inc ebx
jmp 0x1003df27
xor ebx, ebx
inc ebx
mov eax, ebx
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x79c]
push dword [ebp - 0x2c]
call fcn.10019c33
mov ecx, dword [ebp - 0x28]
imul ecx, dword [eax]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], esi
dec dword [ebp - 0x2c]
jns 0x1003dee3
lea ecx, [ebp - 0x79c]
mov dword [ebp - 4], esi
call fcn.10019c2e
xor eax, eax
mov dword [ebp - 0x14], 0xfffffff6
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x1003df82
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1010], 0x2443250e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1003df69
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003df94
mov dword [ebp - 0x1010], 0x6ca2cb51
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 6
jl 0x1003df87
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003dfae
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_SetSecurityDescriptorOwner]
xor eax, eax
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0x11ec]
push 7
mov dword [ebp - 0x30], eax
pop eax
mov dword [ebp - 0x30], eax
push 2
call fcn.10019ba5
mov dword [ebp - 4], 0x32
lea ecx, [ebp - 0x1098]
mov dword [ebp - 0x30], 0x8bff
mov dword [ebp - 0x30], 0x4489b467
push 4
call fcn.10019ba5
mov byte [ebp - 4], 0x33
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x40], 0x85aa
mov dword [ebp - 0x30], 0x7e7
mov dword [ebp - 0x18], 0
jmp 0x1003e01a
push dword [ebp - 0x18]
lea ecx, [ebp - 0x11ec]
call fcn.10019c33
mov dword [eax], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1003e007
mov dword [ebp - 0x18], 0
jmp 0x1003e040