Function at 0x10026b7b
Capabilities:
Get common file path

Disassembly:
mov eax, 0x1006c1c6
call fcn.1006b078
sub esp, 0x228
push ebx
push esi
push edi
mov byte [ebp - 0x3c], cl
lea ecx, [ebp - 0x16c]
push 2
mov dword [ebp - 0x1c], 1
pop edi
mov dword [ebp - 0x18], 0x52f3
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x24], 0xf36a5b5c
push 4
mov dword [ebp - 0x34], edx
call fcn.1000e5bc
mov dword [ebp - 0x2c], 0xffffffff
xor ebx, ebx
mov dword [ebp - 0x14], 0xfffffff9
mov dword [ebp - 0x24], ebx
jmp 0x10026be4
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x16c]
mov dword [eax + ecx*4], 0x78317d23
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x10026bd1
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp edx, eax
setl cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
setge dl
cmp edx, 0xffff
jne 0x10026c23
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 9
setle al
cmp eax, dword [ebp - 0x1c]
jl 0x10026c48
cmp dword [ebp - 0x1c], ebx
je 0x10026c48
xor edx, edx
inc edx
mov eax, edx
jmp 0x10026c4d
xor edx, edx
mov eax, ebx
inc edx
push 5
pop ecx
cmp ecx, eax
sbb eax, eax
add eax, 0x2079655a
mov dword [ebp - 0x24], eax
imul eax, dword [ebp - 0x24], 0xca0b
test eax, eax
jne 0x10026c8f
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jne 0x10026c7c
mov esi, ebx
cmp dword [ebp - 0x18], ebx
je 0x10026c7e
mov esi, edx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, esi
setne cl
sub ecx, dword [ebp - 0x18]
jne 0x10026c8f
mov edx, ebx
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x16c]
dec ecx
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov dword [eax + 8], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
lea ecx, [ebp - 0x16c]
setg dl
mov dword [ebp - 0x14], edx
call fcn.1000f0db
push 1
lea ecx, [ebp - 0x13c]
call fcn.1000e5bc
xor edx, edx
mov dword [ebp - 0x24], 0x3c7730f9
mov dword [ebp - 0x24], ebx
inc edx
jmp 0x10026ced
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x13c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10026cde
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], bl
je 0x10026d0a
push 0x1f60
push 0x1324
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], ebx
jl 0x10026d25
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x13c]
cmp dword [eax + ecx*4], ebx
jne 0x10026d25
dec dword [ebp - 0x24]
jns 0x10026d12
lea ecx, [ebp - 0x13c]
call fcn.1000f0db
mov dword [ebp - 0x1c], 0x13dd33a4
mov dword [ebp - 0x30], 0xfffffffd
mov dword [ebp - 0x28], 3
mov dword [ebp - 0x1c], 0xffffffeb
jmp 0x10026e75
mov dword [ebp - 0x14], ebx
xor ecx, ecx
inc ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x24], 0x5c2f
mov dword [ebp - 0x2c], 0x586fa66f
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], ebx
je 0x10026d80
cmp dword [ebp - 0x18], ebx
jne 0x10026d80
mov ecx, ebx
xor eax, eax
cmp ecx, 0xa0a5
setl al
cmp eax, 0xffff
sbb ecx, ecx
xor edx, edx
neg ecx
imul ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
setne dl
sub edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x2c], edx
xor edx, edx
cmp dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
imul eax, ecx, 0xfffffffc
cmp eax, dword [ebp - 0x24]
jge 0x10026dd3
cmp dword [ebp - 0x28], ebx
jne 0x10026dd3
mov eax, ebx
jmp 0x10026dd6
xor eax, eax
inc eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x2c], ebx
je 0x10026df2
cmp dword [ebp - 0x28], ebx
jne 0x10026e7f
jmp 0x10026e72
mov dword [ebp - 0x24], 0x132c2674
mov dword [ebp - 0x24], 0x58c0f86f
mov dword [ebp - 0x24], ebx
jmp 0x10026e13
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x68], 1
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x10026e05
mov dword [ebp - 0x18], ebx
jmp 0x10026e2b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x68], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10026e1d
cmp dword [ebp - 0x28], ebx
jne 0x10026e38
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x64]
cmp ecx, eax
setle dl
mov dword [ebp - 0x24], edx
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xffffffe9
jne 0x10026d51
mov dword [ebp - 0x30], 0x2054
mov esi, 0x100078f0
cmp dword [ebp - 0x30], 0xf28
jge 0x10026f6d
lea eax, [ebp - 0x38]
push eax
push 0x1000775c
call fcn.100528eb
mov eax, dword [ebp - 0x38]
pop ecx
pop ecx
and eax, 0x80000001
jns 0x10026eb7
dec eax
or eax, 0xfffffffe
inc eax
je 0x10026fd4
push 0x100078ec
call fcn.10052cc6
mov eax, dword [ebp - 0x38]
pop ecx
add eax, eax
lea ecx, [ebp - 0xd8]
push eax
call fcn.1000e5bc
mov eax, dword [ebp - 0x38]
mov edx, ebx
mov esi, dword [ebp - 0xd8]
test eax, eax
jle 0x10026f21
mov eax, edx
and eax, 0x80000001
jns 0x10026ef6
dec eax
or eax, 0xfffffffe
inc eax
je 0x10026f08
mov dword [esi + edx*4], edi
lea ecx, [edi - 1]
mov eax, dword [ebp - 0x38]
add eax, edx
mov dword [esi + eax*4], ecx
jmp 0x10026f16
lea eax, [edi - 1]
mov dword [esi + edx*4], eax
mov eax, dword [ebp - 0x38]
add eax, edx
mov dword [esi + eax*4], edi
mov eax, dword [ebp - 0x38]
inc edx
add edi, 2
cmp edx, eax
jl 0x10026ee8
add eax, eax
mov edi, ebx
test eax, eax
jle 0x10026f42
push dword [esi + edi*4]
push 0x100078cc
call fcn.10052b06
mov eax, dword [ebp - 0x38]
inc edi
add eax, eax
pop ecx
pop ecx
cmp edi, eax
jl 0x10026f29
push 0x100076c5
call fcn.10052cc6
pop ecx
test esi, esi
je 0x10026f6a
push esi
call fcn.10052c77
pop ecx
mov dword [ebp - 0xd8], ebx
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xd0], ebx
push 2
pop edi
push 1
lea ecx, [ebp - 0x118]
call fcn.1000e5bc
mov dword [ebp - 4], ebx
lea eax, [ebp - 0x1ec]
push dword [ebp - 0x34]
movdqa xmm0, xmmword [0x10007d80]
lea ecx, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x1fc]
mov dword [ebp - 0x28], 0xd8143836
push eax
push ebx
movdqu xmmword [ebp - 0x1fc], xmm0
mov dword [ebp - 0xc8], ebx
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xc0], ebx
call fcn.10013584
xor edx, edx
inc edx
mov byte [ebp - 4], dl
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x1c], ebx
jmp 0x10026feb
push esi
call fcn.10052cc6
pop ecx
jmp 0x10026f6d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x50], 0xeee2
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x10026fdd
mov dword [ebp - 0x1c], ebx
jmp 0x10027008
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x118]
mov dword [eax + ecx*4], 0x1d26
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10026ff5
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x118]
cmp dword [eax], ebx
jne 0x1002702a
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x28], 0xfffffff6
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0xc8]
dec edx
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, dword [eax]
setg cl
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], ebx
je 0x100270e6
mov dword [ebp - 0x18], 0x2f37
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x2c], 1
push 4
call fcn.1000e5bc
mov dword [ebp - 0x14], ebx
jmp 0x10027083
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x154]
mov dword [eax + ecx*4], 0xeeda781b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10027070
mov eax, dword [ebp - 0x4c]
xor edx, edx
sub eax, 0x846b
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
setg dl
xor eax, eax
cmp edx, 0x6717b38e
setl al
xor edx, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
add eax, 0x336
cmp eax, edx
setle cl
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x154]
mov dword [eax], ecx
lea ecx, [ebp - 0x154]
call fcn.1000f0db
jmp 0x1002713b
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x14], ebx
jmp 0x100270ff
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x10c], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x100270ee
mov dword [ebp - 0x24], 0x14
jmp 0x1002712c
mov dword [ebp - 0x30], 0xc553
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x10c], eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x23
jle 0x1002710d
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x28], ebx
jmp 0x10027164
mov dword [ebp - 0x30], 0x9e520c3d
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x1002715c
push ebx
push 0x1f1
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
cmp dword [ebp - 0x30], ebx
jne 0x1002716a
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xffffffe9
jg 0x10027140
lea ecx, [ebp - 0xc8]
call fcn.1000f0db
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x118]
call fcn.1000f0db
push 3
lea ecx, [ebp - 0x8c]
call fcn.1000e5bc
mov dword [ebp - 0x14], 0x66e58d02
mov dword [ebp - 0x30], 0xd2a6f9a4
mov dword [ebp - 0x1c], ebx
jmp 0x100271b7
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x8c]
mov dword [eax + ecx*4], 0xf40fc027
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100271a4
xor edx, edx
mov dword [ebp - 0x1c], ebx
inc edx
jmp 0x100271d6
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xcc], 0x69919c44
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x100271c5
mov edi, dword [ebp - 0x8c]
mov eax, dword [edi + 4]
mov dword [ebp - 0x14], eax
imul eax, dword [ebp - 0x14], 3
test eax, eax
jne 0x10027233
mov esi, dword [edi + 4]
test esi, esi
je 0x10027233
mov eax, dword [ebp - 0x8c]
xor ecx, ecx
cmp dword [eax], esi
setg cl
xor eax, eax
cmp ecx, 0xf5ebec5
setle al
add eax, esi
jns 0x10027217
cmp dword [ebp - 0x14], ebx
jne 0x10027219
mov edx, ebx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp dword [edi + 4], edx
setg cl
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, 8
jg 0x10027233
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x8c]
xor ecx, ecx
mov eax, dword [eax + 8]
cmp eax, dword [edi + 4]
mov dword [ebp - 0xcc], eax
setl cl
mov dword [ebp - 0x30], ecx
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x10027261
push 0x1cea
call dword [sym.imp.USER32.dll_IsWindow]
lea ecx, [ebp - 0x8c]
call fcn.1000f0db
push 3
lea ecx, [ebp - 0x1cc]
call fcn.1000e5bc
mov dword [ebp - 4], 2
lea eax, [ebp - 0x1dc]
push dword [ebp - 0x34]
movdqa xmm0, xmmword [0x10007dc0]
lea ecx, [ebp - 0xe4]
push eax
lea eax, [ebp - 0x1ec]
mov dword [ebp - 0x30], 0xe6bacd79
push eax
push ebx
movdqu xmmword [ebp - 0x1ec], xmm0
mov dword [ebp - 0xe4], ebx
mov dword [ebp - 0xe0], ebx
mov dword [ebp - 0xdc], ebx
call fcn.10013584
push 1
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.1000e5bc
mov dword [ebp - 0x1c], ebx
mov edi, 0x6579
jmp 0x100272f0
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1cc]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100272e1
xor edx, edx
mov dword [ebp - 0x1c], ebx
inc edx
mov esi, 0x13f1
jmp 0x10027312
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x19c]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10027303
mov eax, dword [ebp - 0x19c]
lea ecx, [ebp - 0x19c]
dec dword [eax]
call fcn.1000f0db
lea ecx, [ebp - 0xe4]
call fcn.1000f0db
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1cc]
call fcn.1000f0db
cmp byte [ebp - 0x3c], 0
je 0x10027f23
push 2
mov dword [ebp - 0x1c], 1
lea ecx, [ebp - 0x184]
pop edi
mov dword [ebp - 0x18], 0x52f3
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x14], 0xf36a5b5c
push 4
call fcn.1000e5bc
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x14], 0xfffffff9
mov dword [ebp - 0x14], ebx
jmp 0x1002739c
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x184]
mov dword [eax + ecx*4], 0x78317d23
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10027389
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp edx, eax
setl cl
xor edx, edx
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
setge dl
cmp edx, 0xffff
jne 0x100273db
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 9
setle al
cmp eax, dword [ebp - 0x1c]
jl 0x10027400
cmp dword [ebp - 0x1c], ebx
je 0x10027400
xor edx, edx
inc edx
mov eax, edx
jmp 0x10027405
xor edx, edx
mov eax, ebx
inc edx
push 5
pop ecx
cmp ecx, eax
sbb eax, eax
add eax, 0x2079655a
mov dword [ebp - 0x14], eax
imul eax, dword [ebp - 0x14], 0xca0b
test eax, eax
jne 0x10027447
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jne 0x10027434
mov esi, ebx
cmp dword [ebp - 0x18], ebx
je 0x10027436
mov esi, edx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp eax, esi
setne cl
sub ecx, dword [ebp - 0x18]
jne 0x10027447
mov edx, ebx
mov dword [ebp - 0x14], edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x184]
dec ecx
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov dword [eax + 8], ecx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
lea ecx, [ebp - 0x184]
setg dl
mov dword [ebp - 0x14], edx
call fcn.1000f0db
mov dword [ebp - 0x2c], 0xbf5cd53b
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x14], 0x44401d1b
mov dword [ebp - 0x30], 0xffffffff
push edi
call fcn.1000e5bc
mov dword [ebp - 0x14], ebx
jmp 0x100274ba
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x178]
mov dword [eax + ecx*4], 0x4431fada
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x100274a7
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
inc eax
cmp eax, 0xfffffffe
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0x8f6c
setl cl
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x18], 1
cmp dword [ebp - 0x18], ebx
jl 0x10027514
mov dword [ebp - 0x30], 0xffffffff
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x30], eax
dec dword [ebp - 0x18]
jns 0x100274f9
lea ecx, [ebp - 0x178]
call fcn.1000f0db
mov dword [ebp - 0x30], 0x24a6
cmp dword [ebp - 0x30], 0xf67
jge 0x100276c7
lea eax, [ebp - 0x44]
push eax
push 0x1000775c
call fcn.100528eb
mov eax, dword [ebp - 0x44]
pop ecx
pop ecx
test eax, eax
je 0x100276c3
dec eax
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x40]
push eax
push 0x1000775c
call fcn.100528eb
pop ecx
pop ecx
push dword [ebp - 0x40]
lea ecx, [ebp - 0x80]
call fcn.1000e5bc
mov edi, ebx
mov dword [ebp - 4], 4
cmp dword [ebp - 0x40], edi
jle 0x10027594
mov esi, dword [ebp - 0x80]
push esi
push 0x1000775c
call fcn.100528eb
inc edi
add esi, 4
pop ecx
pop ecx
cmp edi, dword [ebp - 0x40]
jl 0x1002757e
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
call fcn.10023c3a
mov edx, eax
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x74], edx
push 5
pop eax
mov byte [ebp - 4], al
xor eax, eax
inc eax
mov byte [ebp - 0x1d], bl
cmp dword [ebp - 0x40], eax
jle 0x1002767a
mov esi, dword [ebp - 0x80]
add esi, 4
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x2c], esi
mov ecx, dword [edx + 4]
mov edi, edx
mov eax, ecx
cmp byte [eax + 0xd], 0
jne 0x100275fb
mov edx, dword [esi]
cmp dword [eax + 0x10], edx
jge 0x100275e1
mov eax, dword [eax + 8]
jmp 0x100275f2
cmp byte [edi + 0xd], 0
je 0x100275ed
cmp edx, dword [eax + 0x10]
cmovl edi, eax
mov dword [ebp - 0x14], eax
mov eax, dword [eax]
cmp byte [eax + 0xd], 0
je 0x100275d7
mov edx, dword [ebp - 0x14]
cmp byte [edi + 0xd], 0
jne 0x10027603
mov ecx, dword [edi]
cmp byte [ecx + 0xd], 0
jne 0x1002761f
mov eax, dword [esi]
cmp eax, dword [ecx + 0x10]
jge 0x10027616
mov edi, ecx
mov ecx, dword [ecx]
jmp 0x10027619
mov ecx, dword [ecx + 8]
cmp byte [ecx + 0xd], 0
je 0x1002760b
mov dword [ebp - 0x6c], edx
mov esi, ebx
cmp edx, edi
je 0x1002763a
lea ecx, [ebp - 0x6c]
inc esi
call fcn.10023ba6
cmp dword [ebp - 0x6c], edi
jne 0x10027628
test esi, esi
jne 0x10027676
movzx eax, byte [0x110872ea]
mov esi, dword [ebp - 0x2c]
push eax
lea eax, [esi - 4]
push eax
push ecx
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x74]
call fcn.10023e70
mov eax, dword [ebp - 0x24]
add esi, 4
inc eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x24], eax
cmp eax, dword [ebp - 0x40]
jge 0x1002767a
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x14], edx
jmp 0x100275c8
mov byte [ebp - 0x1d], 1
cmp byte [ebp - 0x1d], 0
mov ecx, 0x100078f0
mov eax, 0x100078ec
cmove eax, ecx
push eax
call fcn.10052cc6
pop ecx
lea ecx, [ebp - 0x74]
call fcn.1001e2bc
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x100276b5
push eax
call fcn.10052c77
pop ecx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
mov eax, dword [ebp - 0x44]
test eax, eax
jne 0x1002754e
push 2
pop edi
dec eax
mov dword [ebp - 0x44], eax
push 3
lea ecx, [ebp - 0x1a8]
call fcn.1000e5bc
mov dword [ebp - 0x1c], ebx
jmp 0x100276ea
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x224], 0xc85f70ad
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x100276d9
mov dword [ebp - 0x1c], ebx
jmp 0x10027708
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1a8]
mov dword [eax + ecx*4], 0x20f89b5
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100276f5
mov esi, dword [ebp - 0x1a8]
mov dword [esi + 4], ebx
mov dword [ebp - 0x14], 1
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x10027733
push ebx
push 0xb83
call dword [sym.imp.GDI32.dll_GetCurrentPositionEx]
dec dword [ebp - 0x14]
inc dword [esi + 4]
cmp dword [esi + 4], 3
jle 0x10027717
lea ecx, [ebp - 0x1a8]
call fcn.1000f0db
push 1
lea ecx, [ebp - 0x190]
call fcn.1000e5bc
xor edx, edx
mov dword [ebp - 0x14], 0x3c7730f9
mov dword [ebp - 0x14], ebx
inc edx
jmp 0x10027775
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x190]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10027766
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x10027793
push 0x1f60
push 0x1324
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], ebx
jl 0x100277ae
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x190]
cmp dword [eax + ecx*4], ebx
jne 0x100277ae
dec dword [ebp - 0x14]
jns 0x1002779b
lea ecx, [ebp - 0x190]
call fcn.1000f0db
mov dword [ebp - 0x28], 0xfffffff9
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0x1c], 0xfffffffd
push 3
call fcn.1000e5bc
push 6
pop esi
mov dword [ebp - 4], esi
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x24], 0xffffffff
push 1
call fcn.1000e5bc
mov dword [ebp - 0x18], ebx
jmp 0x10027802
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xfc]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x100277f3
xor edx, edx
mov dword [ebp - 0x18], ebx
inc edx
jmp 0x1002781f
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x9c]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10027810
mov eax, dword [ebp - 0x28]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
cmp eax, 0xb0e1
mov eax, dword [ebp - 0x28]
setl cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setle cl
sub ecx, 0xa
mov dword [ebp - 0x30], ecx
xor ecx, ecx
cmp dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x28]
setne cl
xor edx, edx
cmp ecx, 0x76d7
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setl cl
mov dword [ebp - 0x30], ecx
xor ecx, ecx
cmp eax, dword [ebp - 0x30]
setne cl
sub ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x28], ebx
jne 0x1002788b
mov esi, ebx
jmp 0x1002788e
xor esi, esi
inc esi
mov eax, dword [ebp - 0x28]
xor ecx, ecx
add eax, 0x2fb32fdf
cmp eax, 0x2910
mov eax, dword [ebp - 0x1c]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
add ecx, 0x8f0e
imul ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], ecx
xor ecx, ecx
cmp eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
setge cl
xor edx, edx
cmp esi, ecx
setge dl
lea eax, [eax + edx*4]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x28]
je 0x10027963
mov dword [ebp - 0x18], 0xfffffffa
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x30], 0xd6813f8
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x28], ebx
je 0x10027903
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x28]
inc ecx
mov eax, dword [ebp - 0x18]
mov edx, ecx
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jne 0x1002791b
mov edx, ebx
mov eax, dword [ebp - 0x1c]
sub eax, edx
neg eax
sbb eax, eax
inc eax
cmp eax, 0xede048ff
ja 0x10027933
mov eax, ecx
cmp dword [ebp - 0x1c], ebx
jne 0x10027935
mov eax, ebx
cmp eax, dword [ebp - 0x18]
jg 0x1002793f
cmp dword [ebp - 0x28], ebx
jne 0x10027941
mov ecx, ebx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x30], eax
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x10027a3f
push ebx
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
jmp 0x10027a3f
mov dword [ebp - 0x18], 0x243c00ee
mov dword [ebp - 0x28], edi
cmp dword [ebp - 0x28], ebx
jl 0x100279c4
mov edx, dword [ebp - 0x18]
xor ecx, ecx
imul edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
neg edx
cmp edx, eax
setge cl
mov dword [ebp - 0x1c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
test eax, eax
setle cl
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x28]
mov dword [eax], edx
mov eax, dword [ebp - 0xfc]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ebp - 0x18]
sub ecx, edx
sub ecx, eax
mov eax, dword [ebp - 0xfc]
mov dword [eax + esi*4], ecx
dec dword [ebp - 0x28]
jns 0x10027972
mov dword [ebp - 0x24], 0xf
jmp 0x10027a39
mov dword [ebp - 0x14], 0x7c3ac0f7
mov dword [ebp - 0x2c], 0xffffffff
cmp dword [ebp - 0x18], ebx
je 0x10027a17
mov ecx, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 0x1226129d
setl al
cmp eax, 0xfc3b
jle 0x100279fe
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x9c]
imul eax, dword [eax], 0x3897
cmp eax, dword [ebp - 0x14]
je 0x10027a17
xor eax, eax
inc eax
jmp 0x10027a19
mov eax, ebx
dec eax
jne 0x10027a25
cmp dword [ebp - 0x18], ebx
jne 0x10027a25
mov eax, ebx
jmp 0x10027a28
xor eax, eax
inc eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xfffffffe
jne 0x100279cd
lea ecx, [ebp - 0x9c]
call fcn.1000f0db
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xfc]
call fcn.1000f0db
mov dword [ebp - 0x18], 0x13dd33a4
mov dword [ebp - 0x30], 0xfffffffd
push 0xffffffffffffffe9
mov dword [ebp - 0x28], 3
mov dword [ebp - 0x18], 0xffffffeb
pop esi
jmp 0x10027c04
mov dword [ebp - 0x24], ebx
xor ecx, ecx
inc ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x14], 0x5c2f
mov dword [ebp - 0x2c], 0x586fa66f
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], ebx
je 0x10027aac
cmp dword [ebp - 0x1c], ebx
jne 0x10027aac
mov ecx, ebx
xor eax, eax
cmp ecx, 0xa0a5
setl al
cmp eax, 0xffff
sbb ecx, ecx
xor edx, edx
neg ecx
imul ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setne dl
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x2c], edx
xor edx, edx
cmp dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x24]
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
imul eax, ecx, 0xfffffffc
cmp eax, dword [ebp - 0x14]
jge 0x10027aff
cmp dword [ebp - 0x28], ebx
jne 0x10027aff
mov eax, ebx
jmp 0x10027b02
xor eax, eax
inc eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x2c], ebx
je 0x10027b1e
cmp dword [ebp - 0x28], ebx
jne 0x10027c0d
jmp 0x10027c01
mov dword [ebp - 0x14], 0x132c2674
mov dword [ebp - 0x14], 0x58c0f86f
mov dword [ebp - 0x14], 0x199c
cmp dword [ebp - 0x14], 0xf3e
jge 0x10027b8f
lea eax, [ebp - 0x48]
push eax
push 0x1000775c
call fcn.100528eb
pop ecx
pop ecx
jmp 0x10027b84
dec eax
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0xb0]
push eax
push 0x100077d4
call fcn.100528eb
mov eax, dword [ebp - 0xb0]
add eax, dword [ebp - 0xa0]
push eax
push 0x100077ac
call fcn.10052b06
add esp, 0x14
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x10027b4e
dec eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x14], ebx
jmp 0x10027ba2
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x58], 1
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10027b94
mov dword [ebp - 0x1c], ebx
jmp 0x10027bba
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x58], 0xfffffff9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x10027bac
cmp dword [ebp - 0x28], ebx
jne 0x10027bc7
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x54]
cmp ecx, eax
setle dl
mov dword [ebp - 0x14], edx
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jne 0x10027a7d
push 1
lea ecx, [ebp - 0x124]
call fcn.1000e5bc
mov dword [ebp - 4], 7
lea eax, [ebp - 0x1fc]
push dword [ebp - 0x34]
movdqa xmm0, xmmword [0x10007d80]
lea ecx, [ebp - 0xac]
push eax
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x1c], 0xd8143836
push eax
push ebx
movdqu xmmword [ebp - 0x20c], xmm0
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xa4], ebx
call fcn.10013584
xor edx, edx
mov byte [ebp - 4], 8
inc edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x18], ebx
jmp 0x10027c87
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x60], 0xeee2
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10027c79
mov dword [ebp - 0x18], ebx
jmp 0x10027ca4
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x124]
mov dword [eax + ecx*4], 0x1d26
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10027c91
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x124]
cmp dword [eax], ebx
jne 0x10027cc6
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x1c], 0xfffffff6
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0xac]
dec edx
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, dword [eax]
setg cl
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], ebx
je 0x10027d82
mov dword [ebp - 0x18], 0x2f37
lea ecx, [ebp - 0x160]
mov dword [ebp - 0x2c], 1
push 4
call fcn.1000e5bc
mov dword [ebp - 0x14], ebx
jmp 0x10027d1f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x160]
mov dword [eax + ecx*4], 0xeeda781b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10027d0c
mov eax, dword [ebp - 0x5c]
xor edx, edx
sub eax, 0x846b
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
setg dl
xor eax, eax
cmp edx, 0x6717b38e
setl al
xor edx, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
add eax, 0x336
cmp eax, edx
setle cl
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x160]
mov dword [eax], ecx
lea ecx, [ebp - 0x160]
call fcn.1000f0db
jmp 0x10027dd7
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x14], ebx
jmp 0x10027d9b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x104], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10027d8a
mov dword [ebp - 0x24], 0x14
jmp 0x10027dc8
mov dword [ebp - 0x30], 0xc553
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x104], eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x23
jle 0x10027da9
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x104], eax
mov dword [ebp - 0x1c], ebx
jmp 0x10027e00
mov dword [ebp - 0x30], 0x9e520c3d
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x10027df8
push ebx
push 0x1f1
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
cmp dword [ebp - 0x30], ebx
jne 0x10027e05
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jg 0x10027ddc
lea ecx, [ebp - 0xac]
call fcn.1000f0db
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x124]
call fcn.1000f0db
push 3
lea ecx, [ebp - 0xbc]
call fcn.1000e5bc
mov dword [ebp - 0x14], 0x66e58d02
mov dword [ebp - 0x30], 0xd2a6f9a4
mov dword [ebp - 0x18], ebx
jmp 0x10027e52
push 3
lea ecx, [ebp - 0x1c0]
call fcn.1000e5bc
mov dword [ebp - 4], 9
lea eax, [ebp - 0x1cc]
movdqa xmm0, xmmword [0x10007dc0]
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x34], 0xe6bacd79
push dword [ebp - 0x34]
movdqu xmmword [ebp - 0x1dc], xmm0
push eax
lea eax, [ebp - 0x1dc]
mov dword [ebp - 0xf0], ebx
push eax
push ebx
mov dword [ebp - 0xec], ebx
mov dword [ebp - 0xe8], ebx
call fcn.10013584
push 1
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0xa
call fcn.1000e5bc
mov dword [ebp - 0x18], ebx
jmp 0x10027fa2
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c0]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10027f93
xor edx, edx
mov dword [ebp - 0x18], ebx
inc edx
jmp 0x10027fbf
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x130]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10027fb0
mov eax, dword [ebp - 0x130]
lea ecx, [ebp - 0x130]
dec dword [eax]
call fcn.1000f0db
lea ecx, [ebp - 0xf0]
call fcn.1000f0db
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c0]
call fcn.1000f0db
push 4
pop esi
mov dword [ebp - 0x2c], 0xbf5cd53b
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], 0x44401d1b
mov dword [ebp - 0x34], 0xffffffff
push 2
call fcn.1000e5bc
mov dword [ebp - 0x14], ebx
jmp 0x10028031
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x148]
mov dword [eax + ecx*4], 0x4431fada
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1002801e
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
inc eax
cmp eax, 0xfffffffe
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0x8f6c
setl cl
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x18], 1
cmp dword [ebp - 0x18], ebx
jl 0x1002808c
mov dword [ebp - 0x34], 0xffffffff
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x148]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x18]
jns 0x10028071
lea ecx, [ebp - 0x148]
call fcn.1000f0db
push 3
lea ecx, [ebp - 0x1b4]
call fcn.1000e5bc
mov dword [ebp - 0x18], ebx
jmp 0x100280ba
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x234], 0xc85f70ad
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x100280a9
mov dword [ebp - 0x18], ebx
jmp 0x100280d7
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1b4]
mov dword [eax + ecx*4], 0x20f89b5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x100280c4
mov esi, dword [ebp - 0x1b4]
mov dword [esi + 4], ebx
mov dword [ebp - 0x14], 1
mov byte [ebp - 0x1d], bl
cmp byte [ebp - 0x1d], 0
je 0x10028102
push ebx
push 0xb83
call dword [sym.imp.GDI32.dll_GetCurrentPositionEx]
dec dword [ebp - 0x14]
inc dword [esi + 4]
cmp dword [esi + 4], 3
jle 0x100280e6
lea ecx, [ebp - 0x1b4]
call fcn.1000f0db
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [eax], ebx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret