Function at 0x1001aed9
Capabilities:
Set environment variable

Disassembly:
mov eax, 0x10087654
call fcn.100870dc
sub esp, 0x138
push ebx
push esi
push edi
xor edi, edi
mov dword [ebp - 0x44], ecx
inc edi
mov dword [ebp - 0x14], 0xe83c7730
mov dword [ebp - 0x30], 0xe52d8cb4
lea ecx, [ebp - 0xd8]
push edi
mov dword [ebp - 0x2c], edx
call fcn.10016c3e
xor ebx, ebx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 4], ebx
push 2
mov dword [ebp - 0x18], 0x31d8b9db
pop esi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x28], 0x9f6a715c
mov dword [ebp - 0x28], 0xbf495e3b
push esi
call fcn.10016c3e
mov dword [ebp - 0x28], 0x75d5f8d9
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x28], 8
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x18], 0xc7153413
mov dword [ebp - 0x14], ebx
jmp 0x1001af6c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x128], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1001af5f
mov dword [ebp - 0x14], ebx
jmp 0x1001af8a
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xd8]
mov dword [eax + ecx*4], 0x6db6d037
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1001af77
mov dword [ebp - 0x14], ebx
jmp 0x1001afa7
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xe8]
mov dword [eax + ecx*4], 0x82bd
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1001af94
mov dword [ebp - 0x14], ebx
jmp 0x1001afbe
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xa8], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1001afb1
mov dword [ebp - 0x14], ebx
jmp 0x1001afec
mov dword [ebp - 0x28], 0xfffffff6
mov dword [ebp - 0x24], ebx
jmp 0x1001afe1
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x11c], esi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jl 0x1001afd4
dec dword [ebp - 0x18]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x1001afc8
mov eax, dword [ebp - 0x20]
sub eax, 0x43de4f81
mov dword [ebp - 0x14], eax
jne 0x1001b015
mov dword [ebp - 0x18], 0xffff
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov eax, ebx
cmp dword [ebp - 0xa4], ebx
je 0x1001b017
mov eax, edi
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0xa8], eax
call fcn.1001742d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd8]
call fcn.1001742d
cmp byte [ebp + 0x10], bl
je 0x1001b55d
movdqa xmm0, xmmword [0x10008380]
lea eax, [ebp - 0xf8]
mov dword [ebp + 0x10], edi
lea ecx, [ebp - 0x84]
mov dword [ebp + 0x10], 0xf46db505
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x10], 7
mov dword [ebp + 0x10], 0xee7d214c
mov dword [ebp + 0x10], ebx
push dword [ebp + 0x10]
movdqu xmmword [ebp - 0x108], xmm0
push eax
lea eax, [ebp - 0x108]
mov dword [ebp - 0x84], ebx
push eax
push ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
call fcn.1001815d
mov dword [ebp + 0x10], 0xcba86ba4
lea ecx, [ebp - 0x84]
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x10], 0xfffffffb
dec dword [ebp + 0x10]
mov dword [ebp + 0x10], 0xedb39523
call fcn.1001742d
mov dword [ebp + 0x10], ebx
jmp 0x1001b0d3
mov eax, dword [ebp + 0x10]
mov dword [ebp + eax*4 - 0x134], 0xffffffff
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], 3
jl 0x1001b0c2
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], bl
je 0x1001b0e7
call dword [sym.imp.USER32.dll_DestroyCaret]
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], bl
je 0x1001b0f7
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetCommTimeouts]
mov eax, dword [ebp + 0x14]
mov dword [eax], edi
cmp dword [eax], ebx
jl 0x1001b49c
mov dword [ebp - 0x14], 0x847dfa86
lea ecx, [ebp - 0xcc]
mov dword [ebp + 0x10], 6
push edi
call fcn.10016c3e
mov dword [ebp - 4], edi
mov dword [ebp + 0x10], ebx
jmp 0x1001b134
mov eax, dword [ebp + 0x10]
mov dword [ebp + eax*4 - 0x5c], 0xfaab39e2
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], edi
jl 0x1001b126
mov dword [ebp + 0x10], ebx
jmp 0x1001b151
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0xcc]
mov dword [eax + ecx*4], 0x68fdadf8
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], edi
jl 0x1001b13e
cmp dword [ebp - 0x14], ebx
je 0x1001b17b
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], 0
je 0x1001b231
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
jmp 0x1001b231
push dword [ebp + 0x10]
movdqa xmm0, xmmword [0x10008390]
lea eax, [ebp - 0xe8]
push eax
lea eax, [ebp - 0xf8]
mov dword [ebp - 0x20], 0xab72
push eax
mov dword [ebp - 0x18], 0x26f3f17e
lea ecx, [ebp - 0x68]
push ebx
movdqu xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
call fcn.1001815d
mov dword [ebp + 0x10], 0xa353
xor ecx, ecx
mov dword [ebp - 0x18], 0x8112def9
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
cmp eax, 0xfd66
mov eax, dword [ebp + 0x10]
setg cl
xor edx, edx
cmp ecx, 0x87fc
mov ecx, edi
setg dl
inc dword [ebp + 0x10]
cmp eax, edx
mov eax, dword [ebp - 0x68]
cmovl ecx, ebx
mov dword [eax + 8], ecx
mov dword [ebp - 0x18], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x18]
cmp eax, 0xffff
setne cl
inc ecx
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x5c], ecx
lea ecx, [ebp - 0x68]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov dword [ebp + 0x10], eax
call fcn.1001742d
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], 0
je 0x1001b242
push ebx
push ebx
call dword [sym.imp.USER32.dll_UnregisterClassA]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xcc]
call fcn.1001742d
push 3
lea ecx, [ebp - 0xc0]
call fcn.10016c3e
mov dword [ebp - 4], esi
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0x1c], ebx
push edi
call fcn.10016c3e
mov dword [ebp + 0x10], 0x8d3a18e4
mov dword [ebp + 0x10], 0x33582f80
mov dword [ebp + 0x10], ebx
jmp 0x1001b296
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0xb4]
mov dword [eax + ecx*4], 3
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], edi
jl 0x1001b283
mov dword [ebp + 0x10], ebx
jmp 0x1001b2ad
mov eax, dword [ebp + 0x10]
mov dword [ebp + eax*4 - 0x114], edi
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], 3
jl 0x1001b2a0
mov edi, dword [ebp - 0x1c]
mov ecx, 0xeb9ae77a
mov eax, dword [ebp - 0xb4]
mov esi, dword [ebp - 0x1c]
mov dword [eax], edi
mov dword [ebp - 0x10c], esi
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
lea ecx, [ebp - 0xb4]
setne dl
xor eax, eax
cmp edx, edi
setne al
sub eax, esi
neg eax
sbb eax, eax
inc eax
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp + 0x10], eax
call fcn.1001742d
mov dword [ebp + 0x10], ebx
jmp 0x1001b318
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0xc0]
mov dword [eax + ecx*4], 0xfffffff8
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], 3
jl 0x1001b305
mov dword [ebp - 0x14], 0x40d7f825
mov dword [ebp - 0x40], 0x2314af12
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x24], 4
mov dword [ebp - 0x2c], 0x86992f1e
mov dword [ebp - 0x30], 0xfff9
mov dword [ebp - 0x18], 6
mov dword [ebp - 0x28], 0xaacc
mov dword [ebp - 0x14], 0xfffffffd
cmp dword [ebp - 0x14], 0x14
jge 0x1001b464
xor esi, esi
inc esi
mov dword [ebp + 0x10], 0xd05ba772
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x20], 9
mov dword [ebp + 0x10], ebx
jmp 0x1001b3ff
mov dword [ebp - 0x20], 0xc2184e5a
mov dword [ebp - 0x24], ebx
jmp 0x1001b39e
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x6c], 7
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jl 0x1001b390
cmp dword [ebp + 0x10], ebx
jne 0x1001b3ed
cmp dword [ebp - 0x14], ebx
je 0x1001b3e3
dec dword [ebp - 0x2c]
je 0x1001b3dd
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1c], 0xffffffff
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + 0x10]
mov edx, ebx
cmp dword [ebp - 0x20], ebx
je 0x1001b3ef
mov edx, esi
mov eax, dword [ebp - 0x40]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x20], ecx
dec dword [ebp + 0x10]
cmp dword [ebp + 0x10], 0xffffffe6
jg 0x1001b384
cmp dword [ebp - 0x14], ebx
jne 0x1001b415
mov edx, ebx
cmp dword [ebp - 0x18], ebx
je 0x1001b417
mov edx, esi
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, 0x8bb6
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0x10]
setg cl
xor edx, edx
cmp eax, ecx
setl dl
xor ecx, ecx
imul edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x1c], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x14
jl 0x1001b36a
mov esi, dword [ebp + 0x14]
mov eax, dword [ebp + 0x20]
mov ecx, dword [esi]
mov eax, dword [eax]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ebp - 0xc0]
add ecx, 5
or dword [ebp - 4], 0xffffffff
mov dword [eax + 4], ecx
lea ecx, [ebp - 0xc0]
call fcn.1001742d
dec dword [esi]
cmp dword [esi], ebx
push 1
pop edi
push 2
pop esi
jge 0x1001b104
mov dword [ebp - 0x14], 0x9841b3c6
lea ecx, [ebp - 0x90]
push edi
call fcn.10016c3e
mov dword [ebp - 0x1c], 6
mov dword [ebp + 0x10], ebx
jmp 0x1001b4ce
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x90]
mov dword [eax + ecx*4], 0x9f7fd1e8
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], edi
jl 0x1001b4bb
mov dword [ebp - 0x14], ebx
jmp 0x1001b507
mov eax, dword [ebp - 0x90]
mov dword [eax], 0xd149febb
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], 0
je 0x1001b4f4
push ebx
call dword [sym.imp.GDI32.dll_GetObjectType]
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], 0
je 0x1001b504
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe8
jne 0x1001b4d8
mov edx, dword [ebp - 0x14]
xor ecx, ecx
mov eax, dword [ebp - 0x90]
mov dword [eax], edx
mov eax, dword [ebp - 0x1c]
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, 0x47346880
setl al
xor edx, edx
neg eax
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
cmp eax, 3
setne dl
sub edx, ecx
lea ecx, [ebp - 0x90]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x1c], edx
call fcn.1001742d
jmp 0x1001b9c2
mov dword [ebp - 0x20], 0x23ed15d
mov dword [ebp - 0x28], 0xf90a
mov dword [ebp - 0x40], 0x5ea2
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x10], esi
mov dword [ebp + 0x10], ebx
jmp 0x1001b591
mov eax, dword [ebp + 0x10]
mov dword [ebp + eax*4 - 0xdc], 0xb8fa48a2
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], edi
jl 0x1001b580
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x20]
je 0x1001b5a1
mov eax, dword [ebp - 0x28]
mov dword [ebp + 0x10], 0xdb75
xor edx, edx
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x40]
cmp ecx, eax
push edi
setl dl
lea ecx, [ebp - 0x78]
mov dword [ebp + 0x10], edx
mov dword [ebp - 0x18], 0xa7bc6c89
call fcn.10016c3e
mov dword [ebp + 0x10], ebx
jmp 0x1001b5db
mov eax, dword [ebp + 0x10]
mov dword [ebp + eax*4 - 0x3c], 0xe1757117
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], 3
jl 0x1001b5cd
mov dword [ebp + 0x10], ebx
jmp 0x1001b5f6
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x78]
mov dword [eax + ecx*4], 0xf1eb7e59
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], edi
jl 0x1001b5e6
mov dword [ebp - 0x34], 0x1b
jmp 0x1001b7a9
mov dword [ebp + 0x10], 5
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], edi
mov dword [ebp + 0x10], ebx
jmp 0x1001b627
mov eax, dword [ebp + 0x10]
mov dword [ebp + eax*4 - 0x48], 0x82b
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], edi
jl 0x1001b619
mov eax, dword [ebp - 0x34]
xor ecx, ecx
cmp eax, 0x4bb4
setg cl
imul eax, ecx, 3
test eax, eax
je 0x1001b647
mov eax, edi
cmp dword [ebp - 0x38], ebx
jne 0x1001b649
mov eax, ebx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x38], edi
mov eax, dword [ebp - 0x34]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setge cl
cmp ecx, 0xba5616d2
sbb eax, eax
xor edx, edx
neg eax
lea ecx, [eax - 0x7f3c88fe]
mov eax, dword [ebp - 0x48]
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x78]
setle cl
mov dword [eax], ecx
mov eax, dword [ebp - 0x48]
add eax, ecx
mov dword [ebp + 0x10], eax
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x38]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
cmp eax, 0xd476
jne 0x1001b6ac
mov eax, ebx
cmp dword [ebp - 0x34], ebx
je 0x1001b6ae
mov eax, edi
imul ecx, eax, 0x43c6
xor edx, edx
mov eax, dword [ebp - 0x34]
cmp ecx, eax
setl dl
xor eax, eax
cmp edx, 0x4c01e07a
setg al
cmp eax, 0xccce
jge 0x1001b780
or eax, 0xffffffff
xor edx, edx
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x14], 0x23a55a41
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x78]
setl dl
mov dword [ebp - 0x20], edx
xor edx, edx
mov ecx, dword [ebp - 0xa0]
mov esi, dword [eax]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setne dl
xor eax, eax
sub edx, esi
cmp edx, 0x4c99
mov edx, edi
setg al
xor ecx, ecx
cmp esi, eax
mov eax, dword [ebp + 0x10]
setne cl
sub edx, ecx
mov ecx, dword [ebp - 0x18]
sub edx, eax
mov eax, dword [ebp - 0x78]
add ecx, edx
imul edx, ecx, 0x2cc
mov dword [eax], ecx
mov eax, dword [ebp + 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
setg cl
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x14], 0xfffffff7
jmp 0x1001b778
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], bl
je 0x1001b775
call dword [sym.imp.KERNEL32.dll_GetOEMCP]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x13
je 0x1001b767
jmp 0x1001b7a6
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], bl
je 0x1001b790
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], bl
je 0x1001b7a6
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0x11
jg 0x1001b607
lea ecx, [ebp - 0x78]
call fcn.1001742d
push 0xfffffffffffffff6
pop eax
mov dword [ebp - 0x58], eax
xor ecx, ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x10], 0x849b76ee
mov eax, dword [ebp - 0x4c]
mov dword [ebp + 0x10], eax
mov edx, dword [ebp - 0x50]
add edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x50]
neg edx
cmp eax, edx
mov eax, dword [ebp + 0x10]
setle cl
xor edx, edx
sub eax, ecx
mov dword [ebp + 0x10], eax
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x54]
cmp ecx, eax
setle dl
imul eax, dword [ebp - 0x50], 0x5416
mov ecx, dword [ebp - 0x54]
add eax, 0x3051
add eax, edx
imul ecx, eax
mov dword [ebp - 0x50], ecx
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], bl
je 0x1001b827
push ebx
call dword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
mov dword [ebp + 0x10], 0xac789480
mov dword [ebp + 0x10], 0xa12b57e8
mov dword [ebp + 0x10], 0xfffffffa
mov dword [ebp + 0x10], edi
mov dword [ebp - 0x20], ebx
mov dword [ebp + 0x10], ebx
jmp 0x1001b858
mov eax, dword [ebp + 0x10]
mov dword [ebp + eax*4 - 0x140], 0x19ac196a
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], 3
jl 0x1001b847
dec dword [ebp - 0x20]
mov dword [ebp - 0x14], 0xac204e2
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp + 0x10], ebx
mov dword [ebp - 0x18], 0xa6c65b0b
mov dword [ebp - 0x28], 0xe7bf
mov dword [ebp - 0x14], ebx
jmp 0x1001b8b8
mov byte [ebp + 0x13], bl
cmp byte [ebp + 0x13], bl
je 0x1001b8b5
push 0x1d0
push 0x1fa7
push 0x2516
push 0xee2
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Rectangle]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 9
jge 0x1001b885
cmp dword [ebp - 0x14], ebx
jne 0x1001b928
mov eax, dword [ebp - 0x1c]
xor edx, edx
add eax, dword [ebp - 0x14]
mov dword [ebp + 0x10], eax
mov eax, dword [ebp - 0x1c]
cmp eax, 0x361a6b71
setl dl
sub edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
mov eax, dword [ebp - 0x14]
setg cl
xor edx, edx
cmp ecx, 0xae7
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x14]
setle cl
mov dword [ebp + 0x10], ecx
xor ecx, ecx
cmp dword [ebp + 0x10], eax
setg cl
add ecx, 0x4e5062a
jne 0x1001b91d
mov ecx, ebx
cmp dword [ebp - 0x18], ebx
je 0x1001b91f
mov ecx, edi
mov eax, dword [ebp - 0x14]
add eax, ecx
mov ecx, ebx
je 0x1001b92a
mov ecx, edi
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setg dl
sub edx, dword [ebp - 0x14]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp edx, eax
setl cl
cmp ecx, dword [ebp - 0x18]
jne 0x1001b953
cmp dword [ebp - 0x14], ebx
jne 0x1001b955
mov edi, ebx
mov eax, dword [ebp - 0x28]
xor ebx, ebx
mov esi, dword [ebp + 0xc]
sub edi, eax
mov dword [ebp - 0x14], edi
mov edi, dword [ebp + 0x18]
mov eax, dword [esi]
mov eax, dword [ebp - 0x44]
mov edx, dword [eax]
mov eax, dword [eax]
mov ecx, dword [edi]
mov dword [ebp + 0x10], eax
mov eax, dword [esi]
cmp eax, dword [ecx + edx*4]
mov eax, dword [ebp + 8]
setne bl
xor edx, edx
mov eax, dword [eax]
sub ebx, eax
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax]
cmp ebx, eax
mov eax, dword [esi]
setge dl
xor ecx, ecx
neg edx
cmp eax, edx
mov eax, dword [esi]
mov esi, dword [edi]
setge cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x2c]
setne dl
xor ecx, ecx
mov eax, dword [eax]
cmp edx, eax
mov eax, dword [ebp + 0x10]
setle cl
xor edx, edx
cmp dword [esi], ecx
setge dl
add edx, dword [esi + eax*4]
mov eax, dword [ebp + 0x24]
mov dword [eax], edx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret