Function at 0x100ea987
Capabilities:
Query environment variable

Disassembly:
mov eax, 0x10150e19
call fcn.1014399c
sub esp, 0x1f8
push ebx
push esi
xor ebx, ebx
mov esi, edx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x140], ebx
push edi
mov edi, ecx
mov dword [ebp - 0x24], 0xfffffff7
mov dword [ebp - 0x30], 0xffffffff
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x30], 2
push 1
mov dword [ebp - 0x54], edi
call fcn.100141a5
push 3
mov dword [ebp - 0x2c], 0x283bc1b0
mov dword [ebp - 0x14], ebx
pop ecx
jmp 0x100ea9ea
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x158], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100ea9dd
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], 1
jge 0x100eaa10
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x13c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x100ea9f8
push 3
pop ecx
push 2
mov dword [ebp - 0x24], ebx
pop edx
jmp 0x100eaa6c
mov dword [ebp - 0x14], 0xfd4914d2
mov dword [ebp - 0x14], ebx
jmp 0x100eaa35
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x158], 0xc7555b7c
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100eaa24
mov dword [ebp - 0x14], ebx
jmp 0x100eaa64
mov dword [ebp - 0x1c], 0x14173bf3
mov dword [ebp - 0x1c], ebx
jmp 0x100eaa5c
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x158], 0x8872fa4
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x100eaa4b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jle 0x100eaa3f
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jle 0x100eaa18
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x13c], ebx
je 0x100eaa9a
push dword [ebp - 0x13c]
call fcn.10123626
pop ecx
mov dword [ebp - 0x13c], ebx
mov dword [ebp - 0x138], ebx
mov dword [ebp - 0x134], ebx
push 8
pop ecx
mov dword [ebp - 0x64], ecx
test esi, esi
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], ecx
sete byte [ebp - 0x32]
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
jmp 0x100eaac5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x3c], 0x4a8c6a53
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x100eaab7
mov dword [ebp - 0x60], ebx
cmp dword [ebp - 0x60], ebx
jl 0x100eab26
mov dword [ebp - 0x28], 0xbe92e3f9
mov eax, dword [ebp - 0x60]
cmp dword [ebp + eax*4 - 0x3c], ebx
je 0x100eaaea
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0x60], 1
jne 0x100eab1c
mov eax, dword [ebp - 0x60]
cmp dword [ebp + eax*4 - 0x3c], ebx
je 0x100eab1c
xor eax, eax
inc eax
jmp 0x100eab1e
mov eax, ebx
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x60]
jns 0x100eaad3
mov dword [ebp - 0x1c], 0xfffffff1
cmp dword [ebp - 0x1c], ecx
jle 0x100eab5c
mov dword [ebp - 0x2c], 0xbb000e2e
xor edx, edx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setl dl
xor ecx, ecx
cmp eax, edx
setg cl
mov dword [ebp - 0x58], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 8
jg 0x100eab32
cmp esi, 1
mov dword [ebp - 0x24], 0x42eb90da
push 4
lea ecx, [ebp - 0xac]
sete byte [ebp - 0x31]
call fcn.100141a5
mov dword [ebp - 4], 1
lea eax, [ebp - 0x164]
mov dword [ebp - 0x30], 0xa7221ebc
lea ecx, [ebp - 0x74]
push dword [ebp - 0x30]
xorps xmm0, xmm0
mov dword [ebp - 0x74], ebx
push eax
lea eax, [ebp - 0x174]
mov dword [ebp - 0x70], ebx
push eax
push ebx
movdqu xmmword [ebp - 0x174], xmm0
mov dword [ebp - 0x6c], ebx
call fcn.10015178
push 2
pop eax
mov byte [ebp - 4], al
mov dword [ebp - 0x20], 0x7736
mov dword [ebp - 0x1c], ebx
jmp 0x100eabd4
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xac]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x100eabc5
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], 0xfffffffb
jg 0x100eadba
mov edi, dword [ebp - 0x74]
push 3
lea ecx, [ebp - 0xc4]
call fcn.100141a5
push 4
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 3
call fcn.100141a5
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x14], ebx
jmp 0x100eac27
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc4]
mov dword [eax + ecx*4], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100eac14
mov dword [ebp - 0x14], ebx
jmp 0x100eac45
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xd0]
mov dword [eax + ecx*4], 0x5261fc42
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x100eac32
mov esi, dword [ebp - 0xc4]
push 0x18
pop eax
mov dword [esi + 4], eax
mov dword [ebp - 0x1c], 0x8cccddd1
mov dword [ebp - 0x1c], ebx
jmp 0x100eacea
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x14], 0xd68f985
mov dword [ebp - 0x40], 5
mov dword [ebp - 0x28], 0x79d44f4c
mov ecx, dword [eax]
mov eax, dword [ebp - 0xd0]
push 0
mov dword [eax], ecx
xor ecx, ecx
mov dword [ebp - 0x14], 1
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
cmp eax, 0x97b0
mov eax, dword [ebp - 0xac]
setg cl
cmp dword [eax + edx*4], ecx
mov eax, dword [ebp - 0x14]
pop edx
setg dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x24]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp edx, 0x84b7
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x28], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jle 0x100eac66
dec dword [esi + 4]
cmp dword [esi + 4], 9
jge 0x100eac57
mov eax, dword [ebp - 0x24]
xor ecx, ecx
imul eax, dword [ebp - 0x2c], 0xfffffff6
cmp eax, dword [edi + 0xc]
mov eax, dword [ebp - 0xd0]
setge cl
xor edx, edx
cmp ecx, dword [eax]
setge dl
sub edx, 0xe82b
neg edx
sbb edx, edx
xor eax, eax
inc edx
cmp edx, 5
setl al
cmp eax, 0xe3c2
jge 0x100ead3f
mov eax, dword [ebp - 0x74]
cmp dword [eax + 4], ebx
je 0x100ead49
cmp dword [esi + 4], ebx
je 0x100ead49
xor ecx, ecx
inc ecx
jmp 0x100ead4b
mov ecx, ebx
dec dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x20]
cmp eax, ecx
jge 0x100ead5b
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xd0]
push eax
mov dword [eax], 0x6f576105
call fcn.10123626
pop ecx
push 2
pop eax
mov byte [ebp - 4], al
push dword [ebp - 0xc4]
mov dword [ebp - 0xd0], ebx
mov dword [ebp - 0xcc], ebx
mov dword [ebp - 0xc8], ebx
call fcn.10123626
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0xbc], ebx
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xfffffffb
pop ecx
jle 0x100eabea
mov edi, dword [ebp - 0x54]
cmp dword [ebp - 0x74], 0
je 0x100eadd2
push dword [ebp - 0x74]
call fcn.10123626
pop ecx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x6c], ebx
mov byte [ebp - 4], bl
cmp dword [ebp - 0xac], 0
je 0x100eadfc
push dword [ebp - 0xac]
call fcn.10123626
pop ecx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xa4], ebx
cmp byte [ebp - 0x32], 0
jne 0x100eae08
cmp byte [ebp - 0x31], 0
je 0x100eae2e
push 0x10
lea eax, [ebp - 0x50]
push ebx
push eax
call fcn.10027c8d
add esp, 0xc
lea eax, [ebp - 0x50]
push eax
push 0x5c4a9
push 0x56fdc
call fcn.10027b51
pop ecx
pop ecx
call eax
mov dword [ebp - 0x24], 0x3248c66
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x28], 0xba6b42be
mov dword [ebp - 0x28], 0x551fa4c8
push 4
call fcn.100141a5
mov dword [ebp - 0x28], 0x91c84132
or eax, 0xffffffff
mov dword [ebp - 0x28], 0x72d50fa8
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], 0x914a
mov dword [ebp - 0x1c], ebx
jmp 0x100eae83
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x118]
mov dword [eax + ecx*4], 0x5bb08661
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x100eae70
mov eax, dword [ebp - 0x24]
xor edx, edx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
inc ecx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], edx
xor edx, edx
cmp dword [ebp - 0x30], 0x2717
setne dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x28], ecx
xor ecx, ecx
mov edx, dword [ebp - 0x28]
add edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp edx, eax
mov edx, 0x1215
setge cl
mov dword [ebp - 0x28], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp eax, edx
mov esi, dword [ebp - 0x118]
setl cl
add ecx, dword [ebp - 0x24]
mov dword [esi + 8], edx
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], 3
sbb edx, edx
xor ecx, ecx
inc edx
add edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp eax, 0xffffffff
setg cl
cmp ecx, edx
je 0x100eaf15
cmp dword [esi + 8], ebx
jne 0x100eaf15
mov eax, ebx
jmp 0x100eaf18
xor eax, eax
inc eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eaf30
call dword [sym.imp.USER32.dll_WaitMessage]
push dword [ebp - 0x118]
call fcn.10123626
xor eax, eax
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], ebx
pop ecx
mov dword [ebp - 0x118], ebx
mov dword [ebp - 0x114], ebx
mov dword [ebp - 0x110], ebx
mov word [edi], ax
mov dword [ebp - 4], ebx
movzx esi, word [ebp - 0x48]
mov dword [ebp - 0x140], 1
cmp byte [ebp - 0x32], al
je 0x100eb06d
mov dword [ebp - 0x20], 0x4d2edc75
or eax, 0xffffffff
mov dword [ebp - 0x28], 0x73bf38c0
mov dword [ebp - 0x30], 9
mov dword [ebp - 0x14], 0x4b5c6f8b
mov dword [ebp - 0x40], 0x5b0bb8bf
mov dword [ebp - 0x30], 0xc7104272
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x28], 0xfffffff8
mov dword [ebp - 0x2c], 6
mov dword [ebp - 0x28], 0x483bbb66
mov dword [ebp - 0x1c], ebx
jmp 0x100eafd2
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x164], 0xd3ecf04b
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100eafc1
mov eax, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
dec dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
setl dl
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
mov eax, 0xfffe
setl cl
cmp eax, ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
sbb esi, esi
xor edx, edx
neg esi
cmp ecx, eax
setne dl
xor ecx, ecx
cmp edx, esi
setne cl
xor eax, eax
cmp ecx, 0xffffffff
setne al
cmp word [ebp - 0x48], 0
mov dword [ebp - 0x160], eax
je 0x100eb066
call fcn.10015e25
movzx ecx, word [ebp - 0x48]
xor edx, edx
div ecx
mov esi, edx
jmp 0x100eb5f5
mov esi, ebx
jmp 0x100eb5f5
cmp byte [ebp - 0x31], 0
je 0x100eb5e8
mov dword [ebp - 0x1c], 0xac204e2d
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x24], 0xee41b66b
push 4
call fcn.100141a5
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0x30], 5
mov dword [ebp - 0x2c], 0xfffffff9
push 3
call fcn.100141a5
mov dword [ebp - 0x14], ebx
jmp 0x100eb0c8
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x130]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x100eb0b9
mov dword [ebp - 0x14], ebx
jmp 0x100eb0e6
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10c]
mov dword [eax + ecx*4], 8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100eb0d3
push 0x16
mov dword [ebp - 0x1c], 0xffffffef
pop ecx
jmp 0x100eb163
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x20], ebx
jmp 0x100eb155
mov dword [ebp - 0x14], 5
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x14], ebx
jmp 0x100eb123
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100eb11a
mov dword [ebp - 0x24], ebx
jmp 0x100eb14c
mov dword [ebp - 0x28], 0xffff
mov dword [ebp - 0x14], 6
jmp 0x100eb143
dec dword [ebp - 0x28]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe3
jg 0x100eb13d
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 9
jne 0x100eb12d
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x15
jg 0x100eb104
cmp dword [ebp - 0x1c], ebx
jne 0x100eb168
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x100eb0f8
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x130]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 0x24]
cmp eax, edx
setg cl
xor eax, eax
cmp ecx, edx
setl al
cmp dword [ebp - 0x10c], 0
mov dword [ebp - 0x24], eax
je 0x100eb1b2
push dword [ebp - 0x10c]
call fcn.10123626
pop ecx
mov dword [ebp - 0x10c], ebx
mov dword [ebp - 0x108], ebx
mov dword [ebp - 0x104], ebx
mov byte [ebp - 4], bl
push dword [ebp - 0x130]
call fcn.10123626
movzx eax, word [ebp - 0x44]
pop ecx
push 0x3b
add eax, 0xa
mov dword [ebp - 0x130], ebx
pop ecx
cmp eax, ecx
mov dword [ebp - 0x12c], ebx
mov dword [ebp - 0x128], ebx
lea ecx, [ebp - 0x100]
setg byte [ebp - 0x15]
xor eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x28], ebx
push 3
call fcn.100141a5
mov dword [ebp - 0x24], 0xfff8
mov dword [ebp - 0x28], 0xad0d7276
mov dword [ebp - 0x20], ebx
jmp 0x100eb228
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x100]
mov dword [eax + ecx*4], 0x1cb6a7f4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x100eb215
dec dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x14], ebx
je 0x100eb251
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push 2
pop ecx
cmp ecx, eax
sbb eax, eax
neg eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x100]
xor edx, edx
mov dword [eax + 4], ebx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
inc ecx
cmp ecx, eax
setg dl
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
push dword [ebp - 0x100]
mov dword [ebp - 0x14], eax
call fcn.10123626
pop ecx
push 0x3b
pop eax
mov dword [ebp - 0x100], ebx
mov dword [ebp - 0xfc], ebx
mov dword [ebp - 0xf8], ebx
cmp word [ebp - 0x46], ax
je 0x100eb2cd
cmp word [ebp - 0x46], 0x3a
jne 0x100eb5f5
cmp byte [ebp - 0x15], 0
je 0x100eb5f5
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], 0x5dbd55a
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], 0xb
je 0x100eb410
mov dword [ebp - 0x2c], 9
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x14], ebx
jmp 0x100eb30b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x94], 0x166c1932
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x100eb2fa
mov dword [ebp - 0x14], ebx
jmp 0x100eb327
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x180], 0x657eef10
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100eb316
cmp dword [ebp - 0x24], ebx
jne 0x100eb33e
mov eax, dword [ebp - 0x94]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x94]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x90]
cmp ecx, eax
setle dl
xor ecx, ecx
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x2c]
cmp eax, 0xfffffffc
setg cl
xor eax, eax
cmp ecx, 9
setne al
xor ecx, ecx
cmp eax, 0xd679
setl cl
add ecx, dword [ebp - 0x88]
lea ecx, [ecx*2 + 0x570d7c64]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x88]
jne 0x100eb3a2
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x88]
imul ecx, eax, 0xae07
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
setl dl
cmp edx, dword [ebp - 0x24]
jle 0x100eb3cc
mov eax, dword [ebp - 0x88]
mov eax, dword [ebp - 0x88]
or edx, 0xffffffff
mov ecx, edx
sub ecx, eax
je 0x100eb3e1
mov eax, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x178], 1
mov eax, dword [ebp - 0x24]
dec eax
neg eax
sbb eax, eax
neg eax
add eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xb
jne 0x100eb2e7
jmp 0x100eb413
or edx, 0xffffffff
push 0x17
pop ecx
cmp dword [ebp - 0x24], ebx
je 0x100eb427
mov dword [ebp - 0x28], 0x1036
inc dword [ebp - 0x28]
jmp 0x100eb494
mov dword [ebp - 0x20], ebx
jmp 0x100eb43d
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x84], 0xfffffffc
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 1
jl 0x100eb42c
mov dword [ebp - 0x24], 0xffffffe2
cmp dword [ebp - 0x24], ecx
jge 0x100eb494
mov dword [ebp - 0x28], edx
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eb468
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_DrawMenuBar]
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x84]
cmp ecx, eax
mov eax, dword [ebp - 0x84]
setg dl
xor ecx, ecx
cmp eax, edx
push 0xffffffffffffffff
setg cl
mov dword [ebp - 0x28], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x17
pop edx
jl 0x100eb44f
lea eax, [esi + 1]
mov dword [ebp - 0x14], 0xfffffffb
push 0x18
cdq
pop ecx
idiv ecx
mov dword [ebp - 0x30], 0x672a8358
mov dword [ebp - 0x28], 0x50f6b34c
mov esi, edx
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x2c], 0x5ff79fac
mov dword [ebp - 0x14], 0xb
cmp dword [ebp - 0x14], 3
jg 0x100eb581
or ebx, 0xffffffff
xor edx, edx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x40], 0x98b94be3
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
mov ecx, dword [ebp - 0x14]
setne dl
sub ecx, dword [ebp - 0x14]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, edx
setne al
xor edx, edx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setge dl
imul edx, dword [ebp - 0x20]
mov dword [ebp - 0x28], edx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
neg edx
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0xf885
setge cl
cmp ebx, edx
sbb eax, eax
xor edx, edx
inc eax
cmp ecx, eax
setg dl
sub edx, dword [ebp - 0x14]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp eax, edx
setl cl
xor edx, edx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
test eax, eax
mov eax, dword [ebp - 0x2c]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jle 0x100eb4d6
xor ebx, ebx
push 0x17
pop eax
cmp word [ebp - 0x48], ax
jne 0x100eb5f5
push 0x3c
pop eax
push 0x3b
pop edx
mov ecx, eax
xor eax, eax
cmp word [ebp - 0x46], dx
push 0x3c
cmove ecx, eax
movzx eax, word [ebp - 0x44]
sub ecx, eax
pop eax
add ecx, eax
imul eax, ecx, 0x3e8
push eax
push 0x5c4a9
push 0x5bfac
call fcn.10027b51
pop ecx
pop ecx
call eax
push 0x10
lea eax, [ebp - 0x50]
push ebx
push eax
call fcn.10027c8d
add esp, 0xc
lea eax, [ebp - 0x50]
push eax
push 0x5c4a9
push 0x56fdc
call fcn.10027b51
pop ecx
pop ecx
call eax
jmp 0x100eb5f5
call fcn.10015e25
mov esi, eax
and esi, 0xf
add esi, 7
cmp esi, 0xa
jge 0x100eb70e
xor ecx, ecx
inc ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x30], 0x6ad9
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
add eax, 0x73a4c924
mov dword [ebp - 0x14], eax
je 0x100eb626
cmp dword [ebp - 0x14], ebx
jne 0x100eb628
mov ecx, ebx
mov eax, dword [ebp - 0x24]
xor edx, edx
add eax, ecx
cmp eax, 0x9c25
mov eax, dword [ebp - 0x24]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
cmp dword [ebp - 0x24], ecx
jl 0x100eb64e
cmp dword [ebp - 0x24], ebx
je 0x100eb64e
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setl dl
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x14], ebx
je 0x100eb6bd
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
je 0x100eb6a2
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setle dl
cmp edx, 0xba8dad4f
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x1c]
je 0x100eb6a2
cmp dword [ebp - 0x1c], ebx
je 0x100eb6a2
xor eax, eax
inc eax
jmp 0x100eb6a4
mov eax, ebx
xor edx, edx
cmp eax, 0x64db
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp eax, edx
setne cl
mov dword [ebp - 0x14], ecx
jmp 0x100eb6d5
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eb6ce
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetCommState]
mov dword [ebp - 0x14], 0x649d9592
mov dword [ebp - 0x14], ebx
jmp 0x100eb6f0
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eb6ed
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff1
jle 0x100eb6da
push 0x4309c
call fcn.10018e4c
pop ecx
movzx eax, ax
mov ecx, edi
push eax
push 1
call fcn.10015dc2
mov dword [ebp - 0x14], 0x68ec0ae9
mov dword [ebp - 0x30], 0xbf2d3f50
mov dword [ebp - 0x14], 0x1b
jmp 0x100eb77a
mov dword [ebp - 0x1c], 3
mov dword [ebp - 0x20], ebx
jmp 0x100eb742
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1bc], 1
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x100eb731
push 2
mov dword [ebp - 0x1c], ebx
pop eax
jmp 0x100eb758
cmp dword [ebp - 0x1c], ebx
jne 0x100eb75d
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jle 0x100eb750
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eb777
push 0x1769
push 0xe14
push ebx
call dword [sym.imp.USER32.dll_RemoveMenu]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffffa
jg 0x100eb725
mov dword [ebp - 0x30], 1
lea ecx, [ebp - 0x1ec]
mov edx, esi
call fcn.1006f574
mov esi, eax
push 0x238cb
mov dword [ebp - 4], 5
call fcn.10018e4c
pop ecx
movzx ecx, ax
mov edx, esi
push ecx
lea ecx, [ebp - 0x198]
call fcn.10015d9c
pop ecx
or ecx, 0xffffffff
mov byte [ebp - 4], 6
push ecx
push ebx
push eax
mov ecx, edi
call fcn.10028a9a
xor esi, esi
lea ecx, [ebp - 0x198]
push ebx
inc esi
push esi
call fcn.10014706
push ebx
push esi
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 4], bl
call fcn.10014706
push 2
pop eax
push eax
lea ecx, [ebp - 0xb8]
call fcn.100141a5
mov dword [ebp - 4], 7
push 2
mov dword [ebp - 0x24], 0xfffffff6
mov dword [ebp - 0x20], ebx
pop edx
jmp 0x100eb81f
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xb8]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x100eb810
mov edi, dword [sym.imp.USER32.dll_GetDC]
mov dword [ebp - 0x24], esi
cmp dword [ebp - 0x24], ebx
jl 0x100eb954
push esi
lea ecx, [ebp - 0xdc]
call fcn.100141a5
mov dword [ebp - 0x20], ebx
jmp 0x100eb856
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xdc]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x100eb847
mov eax, dword [ebp - 0xdc]
mov dword [eax], ebx
or eax, 0xffffffff
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eb880
push ebx
push ebx
push 0x1cd2
push ebx
call dword [sym.imp.USER32.dll_AppendMenuA]
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], ebx
jl 0x100eb922
mov dword [ebp - 0x14], 0x5f0ed1ad
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], ebx
jl 0x100eb8f6
mov dword [ebp - 0x20], 0x498e64e6
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eb8c0
push 0x1ef3
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_SetTextAlign]
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], ebx
jl 0x100eb8f1
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eb8de
push ebx
push 0x7fa
push ebx
call dword [sym.imp.GDI32.dll_GetObjectW]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xb8]
cmp dword [eax + ecx*4], ebx
jne 0x100eb8f1
dec dword [ebp - 0x20]
jns 0x100eb8c8
dec dword [ebp - 0x14]
jns 0x100eb89b
mov dword [ebp - 0x14], ebx
jmp 0x100eb914
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eb911
push 0x1aad
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x100eb8fb
dec dword [ebp - 0x1c]
jns 0x100eb88c
mov eax, dword [ebp - 0xdc]
inc dword [eax]
cmp dword [eax], esi
jle 0x100eb863
push eax
call fcn.10123626
mov dword [ebp - 0xdc], ebx
mov dword [ebp - 0xd8], ebx
mov dword [ebp - 0xd4], ebx
dec dword [ebp - 0x24]
pop ecx
jns 0x100eb836
mov byte [ebp - 4], bl
cmp dword [ebp - 0xb8], 0
je 0x100eb97e
push dword [ebp - 0xb8]
call fcn.10123626
pop ecx
mov dword [ebp - 0xb8], ebx
mov dword [ebp - 0xb4], ebx
mov dword [ebp - 0xb0], ebx
cmp byte [ebp - 0x32], 0
push 0xfffffffffffffffe
pop ecx
je 0x100eba9b
push 0xfffffffffffffffd
pop esi
mov dword [ebp - 0x1c], 0xba33
lea ecx, [ebp - 0x124]
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], 0xfffffff6
mov dword [ebp - 0x28], 1
push 1
call fcn.100141a5
mov dword [ebp - 0x20], ebx
jmp 0x100eb9c7
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x124]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 1
jl 0x100eb9b8
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x2c], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
add eax, 0x7051
cmp eax, edx
setl cl
sub ecx, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, dword [ebp - 0x1c]
imul eax, ecx, 0xe6bb
xor ecx, ecx
cmp eax, 0x1348c89
setne cl
xor eax, eax
cmp ecx, 7
setne al
add eax, dword [ebp - 0x1c]
cmp eax, 0x8bc0d133
mov eax, dword [ebp - 0x1c]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setle dl
imul edx, dword [ebp - 0x1c]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x124]
mov dword [eax], ecx
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100eba52
push 0xcd9
call dword [sym.imp.GDI32.dll_GetStockObject]
push dword [ebp - 0x124]
call fcn.10123626
cmp word [ebp - 0x48], 0
pop ecx
mov dword [ebp - 0x124], ebx
mov dword [ebp - 0x120], ebx
mov dword [ebp - 0x11c], ebx
je 0x100eba81
call fcn.10015e25
push 0x3c
pop ecx
jmp 0x100eba91
cmp word [ebp - 0x46], 0
je 0x100eba97
call fcn.10015e25
movzx ecx, word [ebp - 0x46]
xor edx, edx
div ecx
jmp 0x100ebabf
mov eax, ebx
jmp 0x100ebac1
cmp byte [ebp - 0x31], 0
je 0x100ebac9
movzx ecx, word [ebp - 0x44]
xor eax, eax
add ecx, 0xa
push 0x3b
pop edx
cmp ecx, edx
movzx ecx, word [ebp - 0x46]
push 0x3c
setg al
inc eax
add eax, ecx
cdq
pop ecx
idiv ecx
mov eax, edx
mov dword [ebp - 0x20], eax
jmp 0x100ebbc3
mov dword [ebp - 0x1c], 0x9f9b3198
mov dword [ebp - 0x30], 0xfffffffc
mov dword [ebp - 0x20], ebx
jmp 0x100ebae6
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x68], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x100ebadc
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], 6
jg 0x100ebbb2
push 0xfffffffffffffffd
pop esi
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x28], 0xd1bca9d6
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100ebb23
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x20], 0xffffffe5
jmp 0x100ebba0
mov dword [ebp - 0x14], 0x7aced45b
push 7
mov dword [ebp - 0x30], 0xc0233fd5
pop eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x68], ebx
je 0x100ebb79
mov edx, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x28]
cmp edx, eax
setge cl
cmp ecx, dword [ebp - 0x1c]
jle 0x100ebb66
cmp dword [ebp - 0x14], ebx
jne 0x100ebb66
mov ecx, ebx
jmp 0x100ebb69
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x14]
add eax, ecx
cmp eax, 0x9ddcef98
jne 0x100ebb79
mov edx, ebx
jmp 0x100ebb7c
xor edx, edx
inc edx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
setl cl
add ecx, 0x20a2
jne 0x100ebb97
cmp dword [ebp - 0x14], ebx
jne 0x100ebb97
mov eax, ebx
jmp 0x100ebb9a
xor eax, eax
inc eax
mov dword [ebp - 0x30], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jge 0x100ebb2c
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 6
jle 0x100ebafb
call fcn.10015e25
push 0x3c
xor edx, edx
pop ecx
div ecx
mov eax, edx
mov dword [ebp - 0x20], edx
cmp eax, 0xa
jge 0x100ebbe1
push 0x4309c
call fcn.10018e4c
pop ecx
mov ecx, dword [ebp - 0x54]
movzx eax, ax
push eax
push 1
call fcn.10015dc2
push 3
lea ecx, [ebp - 0xe8]
call fcn.100141a5
push 3
pop edx
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x14], ebx
jmp 0x100ebc0a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x14c], 0xae35
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x100ebbf9
mov dword [ebp - 0x14], ebx
jmp 0x100ebc27
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xe8]
mov dword [eax + ecx*4], 0xcd453606
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x100ebc14
mov edi, dword [ebp - 0xe8]
push 2
pop eax
mov dword [edi + 8], eax
mov dword [ebp - 0x30], 5
mov dword [ebp - 0x28], 0x2aa9dade
cmp dword [edi + 8], ebx
je 0x100ebc55
cmp dword [ebp - 0x28], ebx
je 0x100ebc55
xor ecx, ecx
inc ecx
jmp 0x100ebc57
mov ecx, ebx
mov eax, dword [ebp - 0x14c]
sub ecx, eax
cmp ecx, dword [ebp - 0x148]
jge 0x100ebc71
cmp dword [edi + 8], ebx
je 0x100ebc71
xor ecx, ecx
inc ecx
jmp 0x100ebc73
mov ecx, ebx
mov eax, dword [edi + 8]
mov esi, 0x693009c
sub eax, ecx
mov ecx, dword [ebp - 0x30]
dec ecx
add ecx, eax
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub esi, ecx
mov ecx, dword [ebp - 0x148]
mov eax, dword [ebp - 0x14c]
cmp ecx, eax
setg dl
xor eax, eax
cmp edx, esi
setl al
dec dword [edi + 8]
mov dword [ebp - 0x28], eax
jns 0x100ebc38
mov edx, dword [ebp - 0xe8]
xor ecx, ecx
push edx
mov eax, dword [edx + 4]
add eax, 0xab79
cmp eax, 0x2c02
setle cl
mov dword [ebp - 0x30], ecx
call fcn.10123626
mov edx, dword [ebp - 0x20]
pop ecx
lea ecx, [ebp - 0x1d4]
mov dword [ebp - 0xe8], ebx
mov dword [ebp - 0xe4], ebx
mov dword [ebp - 0xe0], ebx
call fcn.1006f574
mov esi, eax
push 0x238cb
mov dword [ebp - 4], 8
call fcn.10018e4c
pop ecx
movzx ecx, ax
mov edx, esi
push ecx
lea ecx, [ebp - 0x1b0]
call fcn.10015d9c
pop ecx
or ecx, 0xffffffff
mov byte [ebp - 4], 9
mov edi, dword [ebp - 0x54]
push ecx
push ebx
push eax
mov ecx, edi
call fcn.10028a9a
xor esi, esi
lea ecx, [ebp - 0x1b0]
push ebx
inc esi
push esi
call fcn.10014706
push ebx
push esi
lea ecx, [ebp - 0x1d4]
mov byte [ebp - 4], bl
call fcn.10014706
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x20], 0xfffffff0
jmp 0x100ebd8a
mov dword [ebp - 0x30], 0x8b10
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100ebd82
push esi
push 0x1191
push 0x1e5
push 0x157e
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetScrollRange]
cmp dword [ebp - 0x30], ebx
jne 0x100ebd90
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffe8
jne 0x100ebd55
cmp byte [ebp - 0x32], 0
je 0x100ebdc8
cmp word [ebp - 0x48], 0
jne 0x100ebf98
cmp word [ebp - 0x46], 0
jne 0x100ebf98
cmp word [ebp - 0x44], 0
je 0x100ebdc1
call fcn.10015e25
movzx ecx, word [ebp - 0x44]
jmp 0x100ebfa0
mov esi, ebx
jmp 0x100ebfa6
cmp byte [ebp - 0x31], 0
je 0x100ebee1
push 2
pop eax
mov dword [ebp - 0x20], esi
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x28], 0x91b68dee
mov dword [ebp - 0x2c], 8
push eax
call fcn.100141a5
mov dword [ebp - 0x14], ebx
jmp 0x100ebe05
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x80], 0xffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100ebdf7
push 2
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x100ebe26
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xf4]
mov dword [eax + ecx*4], 5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x100ebe13
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x78]
cmp dword [ebp - 0x78], ebx
je 0x100ebe43
mov edx, esi
cmp dword [ebp - 0x2c], ebx
jne 0x100ebe45
mov edx, ebx
mov eax, dword [ebp - 0x78]
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x2c]
cmp eax, edx
mov eax, dword [ebp - 0x7c]
mov esi, dword [ebp - 0x28]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x78]
setge dl
xor ecx, ecx
sub esi, edx
sub esi, eax
mov eax, dword [ebp - 0x2c]
sub esi, eax
mov eax, dword [ebp - 0x20]
cmp eax, esi
setg cl
xor eax, eax
cmp ecx, 0x7d22
setl al
xor edx, edx
imul eax, dword [ebp - 0x80]
imul ecx, eax, 0x5fea
mov eax, dword [ebp - 0x78]
cmp ecx, eax
mov eax, dword [ebp - 0xf4]
setne dl
mov dword [eax], edx
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100ebebc
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_EndDoc]
push dword [ebp - 0xf4]
call fcn.10123626
pop ecx
mov dword [ebp - 0xf4], ebx
mov esi, ebx
mov dword [ebp - 0xf0], ebx
mov dword [ebp - 0xec], ebx
jmp 0x100ebfab
mov dword [ebp - 0x14], 0xd6c05baf
mov dword [ebp - 0x30], 0x1188e17b
mov dword [ebp - 0x14], ebx
jmp 0x100ebf8f
push esi
lea ecx, [ebp - 0xa0]
call fcn.100141a5
mov dword [ebp - 0x1c], 0xfffffff8
mov dword [ebp - 0x20], ebx
jmp 0x100ebf22
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xa0]
mov dword [eax + ecx*4], 0xe0b4074d
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x100ebf0f
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x100ebf65
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100ebf46
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EndPaint]
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x1c]
cmp dword [ecx + esi*4], eax
setl dl
mov dword [ebp - 0x30], edx
dec dword [ebp - 0x1c]
jns 0x100ebf2f
xor esi, esi
inc esi
cmp dword [ebp - 0xa0], 0
je 0x100ebf8c
push dword [ebp - 0xa0]
call fcn.10123626
pop ecx
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x98], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x100ebef7
call fcn.10015e25
push 0x3c
pop ecx
xor edx, edx
div ecx
mov esi, edx
cmp esi, 0xa
jge 0x100ebfc3
push 0x4309c
call fcn.10018e4c
pop ecx
movzx eax, ax
mov ecx, edi
push eax
push 1
call fcn.10015dc2
mov dword [ebp - 0x30], 0xff18ee85
mov dword [ebp - 0x20], ebx
jmp 0x100ebfdd
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x38], 0x4fd3df75
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 1
jl 0x100ebfcf
mov dword [ebp - 0x38], 0xffffffe3
cmp dword [ebp - 0x38], 0xffffffed
je 0x100ec06b
push 0xfffffffffffffffe
pop edi
mov dword [ebp - 0x1c], 0xfffffff6
cmp dword [ebp - 0x1c], ebx
je 0x100ec018
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
dec ecx
neg ecx
sbb ecx, ecx
neg ecx
sub eax, ecx
je 0x100ec018
xor ecx, ecx
inc ecx
jmp 0x100ec01a
mov ecx, ebx
mov eax, dword [ebp - 0x1c]
imul eax, ecx
neg eax
sbb eax, eax
neg eax
add eax, 0xffff
je 0x100ec037
cmp dword [ebp - 0x38], ebx
je 0x100ec037
xor eax, eax
inc eax
jmp 0x100ec039
mov eax, ebx
cmp edi, eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x38]
cmp eax, 0xfffffffb
jg 0x100ec050
cmp dword [ebp - 0x1c], ebx
je 0x100ec050
xor edx, edx
inc edx
jmp 0x100ec052
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0xffffffed
jne 0x100ebff3
mov edi, dword [ebp - 0x54]
mov edx, esi
lea ecx, [ebp - 0x204]
call fcn.1006f574
or ecx, 0xffffffff
mov dword [ebp - 4], 0xa
push ecx
push ebx
push eax
mov ecx, edi
call fcn.10028a9a
push ebx
push 1
lea ecx, [ebp - 0x204]
call fcn.10014706
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret