Function at 0x1001b5cc
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8c
push ebx
push esi
xor ebx, ebx
push edi
test cl, cl
je 0x1001b796
mov dword [ebp - 4], 0x6512
xor esi, esi
mov dword [ebp - 0x10], 0xc25b
inc esi
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x50], esi
mov dword [ebp - 8], 0x73ee7637
mov dword [ebp - 8], 0xc7d24b5e
mov dword [ebp - 0x14], 0xbe360de5
mov dword [ebp - 8], ebx
jmp 0x1001b627
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x2c], 0xbe56890c
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1001b619
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x1001b63d
mov eax, esi
cmp dword [ebp - 0x2c], ebx
jne 0x1001b63f
mov eax, ebx
mov dword [ebp - 0x54], eax
mov edx, dword [ebp - 4]
imul edx, eax
mov eax, dword [ebp - 4]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
setle cl
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x10]
jg 0x1001b692
mov dword [ebp - 8], 3
jmp 0x1001b687
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], ebx
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xffffffe9
jne 0x1001b67e
jmp 0x1001b745
push 3
mov dword [ebp - 0x10], 0x2a93
mov dword [ebp - 8], ebx
pop edi
jmp 0x1001b6af
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x68], 0xffffffff
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jl 0x1001b6a1
mov dword [ebp - 8], ebx
jmp 0x1001b6c7
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x40], 0x95cc9e52
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x1001b6b9
mov dword [ebp - 8], ebx
jmp 0x1001b6ea
mov dword [ebp - 4], ebx
jmp 0x1001b6e2
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x2c], ebx
jne 0x1001b6e7
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jle 0x1001b6d6
inc dword [ebp - 8]
cmp dword [ebp - 8], 8
jne 0x1001b6d1
mov eax, dword [ebp - 4]
xor edx, edx
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, 0xd33d73c1
setne dl
cmp eax, edx
mov dword [ebp - 0x40], edx
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x982f
mov eax, dword [ebp - 0x68]
setl cl
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 4]
cmp ecx, eax
setne dl
sub edx, 0x7fb1
cmp edx, dword [ebp - 0x10]
jle 0x1001b738
cmp dword [ebp - 0x68], ebx
jne 0x1001b738
mov esi, ebx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp esi, eax
setg cl
mov dword [ebp - 0x58], ecx
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001b75f
push ebx
push 0xf24
push ebx
push 0x2624
call dword [sym.imp.KERNEL32.dll_GetStringTypeW]
mov dword [ebp - 0x30], 0xbca63185
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001b775
push ebx
call dword [sym.imp.USER32.dll_RegisterClassW]
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001b784
push ebx
call dword [sym.imp.USER32.dll_SetCursor]
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsZoomed]
jmp 0x1001bc09
push 3
mov dword [ebp - 8], 0xb7c7ce53
mov dword [ebp - 4], ebx
pop edi
jmp 0x1001b7b2
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x8c], edi
inc dword [ebp - 4]
cmp dword [ebp - 4], edi
jl 0x1001b7a5
push 2
pop esi
mov dword [ebp - 8], esi
cmp dword [ebp - 8], ebx
jl 0x1001b813
mov dword [ebp - 4], 0x4dd03248
mov dword [ebp - 4], ebx
jmp 0x1001b809
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001b7f1
push 0x1846
push 0xe5b
push 0x1efa
push 0x2404
push ebx
call dword [sym.imp.USER32.dll_CheckMenuRadioItem]
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001b806
push 0xd14
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jle 0x1001b7ce
dec dword [ebp - 8]
jns 0x1001b7c2
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001b822
push ebx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push 0xfffffffffffffffc
pop eax
xor esi, esi
mov dword [ebp - 4], eax
mov dword [ebp - 4], ebx
inc esi
jmp 0x1001b83e
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x28], 5
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x1001b830
mov dword [ebp - 4], ebx
jmp 0x1001b8d9
mov dword [ebp - 8], 0xffffffff
mov dword [ebp - 8], ebx
jmp 0x1001b891
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 0x28], ebx
je 0x1001b86b
cmp dword [ebp - 4], 0xed3
mov edx, esi
je 0x1001b86d
mov edx, ebx
mov eax, dword [ebp - 8]
xor ecx, ecx
test eax, eax
mov eax, dword [ebp - 8]
sets cl
sub edx, ecx
sub edx, 2
neg edx
sbb edx, edx
inc edx
imul ecx, edx, 0x1da6
mov dword [ebp + eax*4 - 0x28], ecx
inc dword [ebp - 8]
cmp dword [ebp - 8], ebx
jle 0x1001b857
mov dword [ebp - 8], ebx
cmp dword [ebp - 8], ebx
jl 0x1001b8d6
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], ebx
jl 0x1001b8d1
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001b8cc
push 0x8ec
push 0x2535
push 0x187f
push 0x453
push ebx
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
dec dword [ebp - 0x10]
jns 0x1001b8a9
dec dword [ebp - 8]
jns 0x1001b89e
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jle 0x1001b84b
mov eax, dword [ebp - 4]
mov dword [ebp - 0x28], eax
mov byte [ebp - 0x15], bl
mov dword [ebp - 8], 0xfffffffa
mov dword [ebp - 0x10], 9
mov dword [ebp - 0x10], 0xebd004dd
mov dword [ebp - 0x1c], 0xfffffffb
mov dword [ebp - 4], ebx
jmp 0x1001b91a
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x3c], 0x624039b6
inc dword [ebp - 4]
cmp dword [ebp - 4], edi
jl 0x1001b90c
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001b92e
push ebx
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov dword [ebp - 8], ebx
jmp 0x1001b9f1
mov dword [ebp - 4], 0xd0f065f4
mov dword [ebp - 0x14], 0xcd17cd95
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 8]
add ecx, 2
mov dword [ebp + eax*4 - 0x3c], ecx
or eax, 0xffffffff
sub eax, ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
je 0x1001b9a8
mov eax, dword [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x3c]
test eax, eax
setle cl
xor edx, edx
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, dword [ebp - 0x3c]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 8]
setg cl
mov eax, dword [ebp + eax*4 - 0x3c]
sub ecx, eax
mov ecx, esi
jne 0x1001b9aa
mov ecx, ebx
mov eax, dword [ebp - 4]
xor edx, edx
sub ecx, eax
mov eax, dword [ebp - 4]
sub ecx, 2
cmp ecx, 0x4151
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], ebx
je 0x1001b9d2
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x3c]
mov dword [ebp - 0x1c], eax
inc dword [ebp - 8]
push 2
pop ecx
cmp dword [ebp - 8], ecx
jle 0x1001b936
cmp byte [ebp - 0x15], bl
je 0x1001bc09
mov dword [ebp - 8], 0xfffffff7
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x30], 0x35ca4204
mov dword [ebp - 0x24], 0x3f17e2f9
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x14], 0x31f145ba
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x1c], 0x66c4a87f
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 4], ebx
jmp 0x1001ba4c
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x74], 0xa6847dfa
inc dword [ebp - 4]
cmp dword [ebp - 4], edi
jl 0x1001ba3e
mov dword [ebp - 4], ebx
jmp 0x1001ba64
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x4c], 0x448112de
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x1001ba56
mov dword [ebp - 8], ecx
cmp dword [ebp - 8], ebx
jl 0x1001bb31
mov dword [ebp - 0x14], 0x41637c1d
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x14], 0x512a30a
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x14], 0x780f
mov dword [ebp - 4], ebx
jmp 0x1001baa3
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x44], 0xd9b9
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x1001ba95
mov dword [ebp - 4], ebx
jmp 0x1001babb
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x80], 0xe22401db
inc dword [ebp - 4]
cmp dword [ebp - 4], edi
jl 0x1001baad
inc dword [ebp - 0x14]
mov eax, dword [ebp - 8]
push 0xfffffffffffffffc
pop ecx
push 0
mov eax, dword [ebp + eax*4 - 0x74]
add eax, 5
cmp ecx, eax
mov eax, dword [ebp - 8]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x20]
setl bl
xor ecx, ecx
cmp ebx, eax
setle cl
xor ebx, ebx
cmp ecx, 8
setne bl
xor ecx, ecx
add ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
cmp eax, 0x58bf
mov eax, dword [ebp - 0x44]
setg cl
xor edx, edx
cmp ecx, ebx
pop ebx
setle dl
xor ecx, ecx
add edx, 0x74bf90ed
cmp edx, eax
setl cl
mov dword [ebp - 0x14], ecx
dec dword [ebp - 8]
jns 0x1001ba75
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x4c], eax
test eax, eax
je 0x1001bbb4
xor edx, edx
mov dword [ebp - 0x20], esi
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 0x14]
test eax, eax
sets dl
xor ecx, ecx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 8]
cmp edx, eax
mov eax, dword [ebp - 0x20]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setg dl
xor ecx, ecx
cmp eax, edx
setge cl
xor eax, eax
cmp ecx, 4
setg al
xor ecx, ecx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x20]
cmp eax, 0xa839
mov eax, dword [ebp - 0x1c]
setg cl
xor edx, edx
cmp ecx, 0x1552b9cb
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, 0xfd1a6840
setge cl
cmp eax, ecx
mov eax, dword [ebp - 0x10]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setg dl
neg edx
mov dword [ebp - 0x24], edx
jmp 0x1001bbee
mov dword [ebp - 4], 0xea27
mov dword [ebp - 0x24], 0xbb69233
mov eax, dword [ebp - 4]
cmp dword [ebp - 4], 8
je 0x1001bbce
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
mov eax, dword [ebp - 4]
setg dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x24], ecx
push 0x1846
push 0xe5b
push 0x1efa
push 0x2404
push ebx
call dword [sym.imp.USER32.dll_CheckMenuRadioItem]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret