Function at 0x1002fffe
Capabilities:
Clear file content
Compare security identifiers
Create process on windows
Delete file
Delete registry key
Delete registry value
Enumerate gui resources
Get common file path
Get geographical location
Get memory capacity
Get session user name
Parse pe header
Write and execute a file

Disassembly:
mov eax, 0x10084256
call fcn.100829f0
mov eax, 0x16b4
call fcn.10080610
push ebx
push esi
push edi
mov dword [ebp - 0x58], ecx
lea ecx, [ebp - 0x474]
mov dword [ebp - 0x34], 0
push 3
mov byte [ebp - 0x59], dl
call fcn.100171f5
xor eax, eax
lea ecx, [ebp - 0x9b8]
mov dword [ebp - 4], eax
xor ebx, ebx
mov dword [ebp - 0x40], 9
inc ebx
mov dword [ebp - 0x18], 0xafa9b64f
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x2c], 0x5243b9c
mov dword [ebp - 0x38], 0xe1b8
push 4
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], bl
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10030090
push dword [ebp - 0x10]
lea ecx, [ebp - 0x474]
call fcn.10017262
mov dword [eax], 0x768c0aa3
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10030071
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x100300ac
push dword [ebp - 0x10]
lea ecx, [ebp - 0x9b8]
call fcn.10017262
mov dword [eax], 0xd58e7ea
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10030095
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x474]
push 2
neg esi
call fcn.10017262
or edi, 0xffffffff
mov dword [eax], esi
xor eax, eax
test esi, esi
je 0x100300e7
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x100301c8
push eax
call dword [sym.imp.GDI32.dll_CreateBrushIndirect]
jmp 0x100301c8
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x474]
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x40], 0x7f51ef99
push ebx
call fcn.10017262
push ebx
lea ecx, [ebp - 0x474]
mov esi, eax
call fcn.10017262
mov ecx, dword [eax]
mov dword [esi], ecx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x18], eax
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x1003019a
push 2
lea ecx, [ebp - 0x474]
call fcn.10017262
xor ecx, ecx
cmp dword [eax], 7
setne cl
xor edx, edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
setne dl
xor eax, eax
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], eax
jne 0x10030168
push ebx
lea ecx, [ebp - 0x474]
call fcn.10017262
cmp dword [eax], 0
jne 0x10030168
xor eax, eax
mov ecx, eax
jmp 0x1003016a
mov ecx, ebx
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setge dl
xor ecx, ecx
imul edx, dword [ebp - 0x14]
add edx, 0x4edb
imul edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
cmp edx, eax
setle cl
cmp ecx, 0xdaa237f4
jne 0x10030198
mov eax, ebx
jmp 0x1003019a
xor eax, eax
dec eax
cmp eax, 0x1a094951
jne 0x100301ad
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x100301af
mov eax, ebx
jmp 0x100301af
xor eax, eax
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x9b8]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x2c], eax
xor eax, eax
push eax
call fcn.10017262
inc dword [eax]
lea ecx, [ebp - 0x9b8]
call fcn.1001725d
lea ecx, [ebp - 0x474]
mov dword [ebp - 4], edi
call fcn.1001725d
mov dword [ebp - 0x1c], 0x1897a4a
xor eax, eax
mov dword [ebp - 0x38], 0x312b9482
push 3
mov dword [ebp - 0x10], eax
pop ecx
cmp dword [ebp - 0x10], ecx
jge 0x10030210
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x814], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100301fc
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x10030230
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x100c], 0xa1f05067
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10030218
xor eax, eax
push 2
mov dword [ebp - 0x1c], eax
pop edi
cmp dword [ebp - 0x1c], edi
jg 0x1003029c
mov dword [ebp - 0x18], eax
jmp 0x1003024d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1670], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10030240
mov dword [ebp - 0x100c], ebx
xor edx, edx
mov eax, dword [ebp - 0x810]
mov eax, dword [ebp - 0x1c]
push 0
mov eax, dword [ebp + eax*4 - 0x814]
test eax, eax
mov eax, dword [ebp - 0x1c]
setns dl
xor ecx, ecx
add edx, dword [ebp + eax*4 - 0x814]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x814]
cmp edx, eax
pop eax
setne cl
mov dword [ebp - 0x1004], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jle 0x1003023b
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x100302b4
push eax
push 0x1dea
push eax
call dword [sym.imp.GDI32.dll_GetBitmapBits]
xor eax, eax
mov dword [ebp - 0x48], eax
lea ecx, [ebp - 0x48c]
push 3
call fcn.100171f5
xor eax, eax
mov dword [ebp - 4], edi
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x98]
push 3
call fcn.100171f5
push 5
pop eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x410]
mov dword [ebp - 0x30], 0x921e124d
mov dword [ebp - 0x14], eax
push edi
call fcn.100171f5
mov byte [ebp - 4], 4
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x44], 0x88e6fcac
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x1003032e
push dword [ebp - 0x10]
lea ecx, [ebp - 0x98]
call fcn.10017262
mov dword [eax], 0x82baef6e
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x1003030f
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x10030354
push dword [ebp - 0x10]
lea ecx, [ebp - 0x410]
call fcn.10017262
mov dword [eax], 9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x10030336
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xf
jl 0x10030455
jmp 0x10030365
xor eax, eax
mov dword [ebp - 0x24], 0x3938dd44
mov dword [ebp - 0x40], 0x64854668
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x34], 6
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x1003039d
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x664], 0x9d089051
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10030385
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100303bb
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd78], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100303a6
xor eax, eax
push eax
lea ecx, [ebp - 0x98]
call fcn.10017262
mov ecx, dword [ebp - 0x18]
mov eax, dword [eax]
inc dword [ebp - 0x18]
cmp eax, ecx
jl 0x100303d9
mov esi, ebx
xor eax, eax
jmp 0x100303dd
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0x98]
call fcn.10017262
mov ecx, dword [ebp - 0x24]
xor edx, edx
imul ecx, dword [ebp - 0x24]
push edi
cmp ecx, dword [eax]
lea ecx, [ebp - 0x98]
setne dl
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
call fcn.10017262
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x664], esi
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xd74]
add eax, dword [ebp - 0xd74]
je 0x10030443
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10030445
mov eax, ebx
jmp 0x10030445
xor eax, eax
mov dword [ebp - 0x34], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xf
jge 0x10030363
push ebx
lea ecx, [ebp - 0x410]
call fcn.10017262
mov esi, 0x8d3fd905
cmp dword [eax], 0
je 0x100304bd
xor eax, eax
lea ecx, [ebp - 0x410]
push eax
call fcn.10017262
lea ecx, [ebp - 0x98]
mov dword [eax], esi
xor eax, eax
push eax
call fcn.10017262
xor ecx, ecx
xor ebx, ebx
cmp dword [eax], ebx
setge cl
xor eax, eax
cmp ecx, esi
setg al
cmp eax, 0xfffffff9
je 0x100304b1
xor eax, eax
lea ecx, [ebp - 0x410]
inc eax
push eax
call fcn.10017262
cmp dword [eax], ebx
je 0x100304ba
xor ebx, ebx
inc ebx
xor eax, eax
mov edi, ebx
jmp 0x100304c1
xor ebx, ebx
inc ebx
xor eax, eax
mov edi, eax
push eax
lea ecx, [ebp - 0x98]
call fcn.10017262
mov ecx, dword [ebp - 0x18]
mov esi, eax
xor eax, eax
cmp edi, 0x270
mov edi, 0xffff
setge al
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x30]
setge dl
sub ecx, edx
cmp ecx, dword [esi]
jne 0x1003063f
or edi, 0xffffffff
lea ecx, [ebp - 0xbbc]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x40], 0x758ac421
push ebx
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], 5
mov dword [ebp - 0x18], eax
jmp 0x10030530
push dword [ebp - 0x18]
lea ecx, [ebp - 0xbbc]
call fcn.10017262
push 8
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1003051a
push 2
lea ecx, [ebp - 0x98]
call fcn.10017262
mov ecx, dword [ebp - 0x30]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0x98]
setle bl
xor eax, eax
inc eax
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x10]
xor edx, edx
add ecx, dword [ebp - 0x1c]
mov esi, eax
cmp ecx, ebx
mov ecx, dword [ebp - 0x1c]
setl dl
cmp edx, 0xa2ca01dc
sbb edx, edx
xor eax, eax
neg edx
cmp edx, ecx
lea ecx, [ebp - 0x98]
setne al
xor ebx, ebx
cmp eax, dword [esi]
setl bl
xor eax, eax
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x14]
xor edx, edx
cmp ebx, ecx
mov esi, eax
setne dl
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
inc edx
imul eax, edx, 0xf2db
sub eax, 0x6ccbc211
cmp dword [esi], eax
jle 0x100305cc
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x100305cc
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x100305d1
xor ebx, ebx
inc ebx
mov esi, ebx
push ebx
lea ecx, [ebp - 0x410]
call fcn.10017262
imul ecx, esi, 0xd870
xor edx, edx
cmp ecx, edi
setne dl
sub edx, dword [eax]
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0xfffffffe
setne cl
sub ecx, eax
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x98]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x10]
xor eax, eax
push eax
call fcn.10017262
xor eax, eax
lea ecx, [ebp - 0xbbc]
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x10]
xor edx, edx
test ecx, ecx
lea ecx, [ebp - 0xbbc]
setg dl
mov dword [eax], edx
call fcn.1001725d
jmp 0x1003074e
push 2
lea ecx, [ebp - 0x7e0]
call fcn.100171f5
mov byte [ebp - 4], 6
xor eax, eax
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x34], 0xfffffff7
mov dword [ebp - 0x18], eax
jmp 0x10030677
push dword [ebp - 0x18]
lea ecx, [ebp - 0x7e0]
call fcn.10017262
or ecx, 0xffffffff
mov dword [eax], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10030661
push ebx
lea ecx, [ebp - 0x410]
call fcn.10017262
push ebx
lea ecx, [ebp - 0x7e0]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
call fcn.10017262
xor ebx, ebx
cmp dword [eax], ebx
jne 0x10030738
xor edi, edi
lea ecx, [ebp - 0x7e0]
inc edi
push edi
call fcn.10017262
cmp dword [eax], ebx
jne 0x1003072a
xor eax, eax
lea ecx, [ebp - 0x410]
push eax
call fcn.10017262
mov esi, eax
lea ecx, [ebp - 0x98]
xor eax, eax
push eax
call fcn.10017262
mov ecx, dword [esi]
push edi
cmp ecx, dword [eax]
lea ecx, [ebp - 0x7e0]
setl bl
call fcn.10017262
xor ecx, ecx
cmp ebx, dword [eax]
setge cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x98]
push eax
call fcn.10017262
mov edx, dword [ebp - 0x34]
xor ecx, ecx
cmp dword [eax], edx
mov eax, dword [ebp - 0x2c]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x44]
je 0x1003072a
xor ebx, ebx
xor eax, eax
inc ebx
jmp 0x1003072f
xor ebx, ebx
inc ebx
mov eax, ebx
cmp dword [ebp - 0x14], eax
jl 0x1003073b
xor eax, eax
jmp 0x1003073d
xor ebx, ebx
inc ebx
mov eax, ebx
lea ecx, [ebp - 0x7e0]
mov dword [ebp - 0x34], eax
call fcn.1001725d
or edi, 0xffffffff
lea ecx, [ebp - 0x410]
call fcn.1001725d
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 2
call fcn.1001725d
mov dword [ebp - 0x40], 9
lea ecx, [ebp - 0x9d0]
mov dword [ebp - 0x18], 0xafa9b64f
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x34], 0x5243b9c
mov dword [ebp - 0x38], 0xe1b8
push 4
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], 7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100307c2
push dword [ebp - 0x10]
lea ecx, [ebp - 0x48c]
call fcn.10017262
mov dword [eax], 0x768c0aa3
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100307a3
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x100307de
push dword [ebp - 0x10]
lea ecx, [ebp - 0x9d0]
call fcn.10017262
mov dword [eax], 0xd58e7ea
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x100307c7
mov esi, dword [ebp - 0x48]
lea ecx, [ebp - 0x48c]
push 2
neg esi
call fcn.10017262
mov dword [eax], esi
xor eax, eax
test esi, esi
je 0x10030816
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x100308f7
push eax
call dword [sym.imp.GDI32.dll_CreateBrushIndirect]
jmp 0x100308f7
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x40], 0x7f51ef99
push ebx
call fcn.10017262
push ebx
lea ecx, [ebp - 0x48c]
mov esi, eax
call fcn.10017262
mov ecx, dword [eax]
mov dword [esi], ecx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x18], eax
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x100308c9
push 2
lea ecx, [ebp - 0x48c]
call fcn.10017262
xor ecx, ecx
cmp dword [eax], 7
setne cl
xor edx, edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
setne dl
xor eax, eax
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], eax
jne 0x10030897
push ebx
lea ecx, [ebp - 0x48c]
call fcn.10017262
cmp dword [eax], 0
jne 0x10030897
xor eax, eax
mov ecx, eax
jmp 0x10030899
mov ecx, ebx
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setge dl
xor ecx, ecx
imul edx, dword [ebp - 0x14]
add edx, 0x4edb
imul edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
cmp edx, eax
setle cl
cmp ecx, 0xdaa237f4
jne 0x100308c7
mov eax, ebx
jmp 0x100308c9
xor eax, eax
dec eax
cmp eax, 0x1a094951
jne 0x100308dc
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x100308de
mov eax, ebx
jmp 0x100308de
xor eax, eax
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x9d0]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x34], eax
xor eax, eax
push eax
call fcn.10017262
inc dword [eax]
lea ecx, [ebp - 0x9d0]
call fcn.1001725d
lea ecx, [ebp - 0x48c]
mov dword [ebp - 4], edi
call fcn.1001725d
movdqa xmm0, xmmword [0x10007bf0]
lea eax, [ebp - 0x10b4]
push eax
lea eax, [ebp - 0x10c4]
mov dword [ebp - 0x10], 0x8d40
push eax
lea ecx, [ebp - 0x14f8]
movdqu xmmword [ebp - 0x10c4], xmm0
call fcn.10017271
lea ecx, [ebp - 0x22d]
mov esi, eax
call fcn.10008cc3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xe6c]
push dword [esi]
call fcn.10017237
push 8
pop esi
mov dword [ebp - 4], esi
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x10]
jne 0x10030987
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x10030aed
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x10030aed
push ebx
lea ecx, [ebp - 0x384]
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], 9
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x100309bc
push dword [ebp - 0x18]
lea ecx, [ebp - 0x384]
call fcn.10017262
and dword [eax], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100309a1
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x32
jle 0x10030ae2
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x10030ad2
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jg 0x10030a42
jmp 0x100309e7
xor eax, eax
push 0xfffffffffffffffb
pop ecx
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x384]
mov dword [ebp - 0x40], 0x21e0bec0
push eax
call fcn.10017262
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x384]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
push dword [ebp - 0x1c]
call fcn.10017262
push dword [ebp - 0x1c]
xor ebx, ebx
lea ecx, [ebp - 0x384]
cmp dword [eax], 1
setne bl
call fcn.10017262
mov dword [eax], ebx
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jle 0x100309e5
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x384]
call fcn.10017262
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x384]
call fcn.10017262
mov ecx, dword [ebp - 0x18]
xor edx, edx
cmp ecx, 0x956a
lea ecx, [ebp - 0x384]
setg dl
xor ebx, ebx
inc edx
cmp dword [eax], edx
setle bl
xor eax, eax
push eax
call fcn.10017262
xor ecx, ecx
cmp ebx, dword [eax]
setne cl
xor eax, eax
inc ecx
cmp ecx, 0x5224
setl al
xor ebx, ebx
inc ebx
cmp eax, 4
ja 0x10030ab2
push ebx
lea ecx, [ebp - 0xe6c]
call fcn.10017262
cmp dword [eax], 0
je 0x10030ab2
mov esi, ebx
jmp 0x10030ab6
xor eax, eax
mov esi, eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x384]
call fcn.10017262
push 0
mov dword [eax], esi
dec dword [ebp - 0x1c]
pop eax
jns 0x100309d8
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x32
jg 0x100309c9
push 8
pop esi
lea ecx, [ebp - 0x384]
call fcn.1001725d
lea ecx, [ebp - 0xe6c]
mov dword [ebp - 4], edi
call fcn.1001725d
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x38], 0x7862fd41
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x10030b1f
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowInfo]
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10030b34
push 0x1b59
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 3
lea ecx, [ebp - 0x4c8]
call fcn.100171f5
xor eax, eax
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10030b66
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6c], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10030b55
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], eax
jl 0x10030c4a
mov dword [ebp - 0x10], 0xa0029bf3
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10030b8b
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectA]
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10030c38
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10030bb8
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6e0], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10030b9f
xor eax, eax
mov dword [ebp - 0x6e0], eax
cmp dword [ebp - 0x6e0], eax
jg 0x10030c35
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x6c]
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setge cl
xor edx, edx
dec ecx
cmp ecx, 0x7643
setne dl
sub edx, dword [ebp + eax*4 - 0x6c]
jne 0x10030bfb
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x6c]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
neg ecx
sbb ecx, ecx
neg ecx
mov edx, dword [ebp + eax*4 - 0x6c]
mov eax, dword [ebp - 0x10]
sub edx, ecx
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, 0x1af9
jl 0x10030c22
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], ebx
xor eax, eax
inc dword [ebp - 0x6e0]
cmp dword [ebp - 0x6e0], eax
jle 0x10030bc6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], eax
jle 0x10030b93
dec dword [ebp - 0x14]
jns 0x10030b72
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10030c5e
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
xor eax, eax
mov dword [ebp - 0x40], 9
mov dword [ebp - 0x18], 0xafa9b64f
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x14], 0x25d36729
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x10030c9d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xda4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10030c88
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10030cb0
push eax
push eax
call dword [sym.imp.USER32.dll_EnumWindows]
xor eax, eax
mov dword [ebp - 0x18], 0xfffffffa
cmp dword [ebp - 0x18], 0xfffffff2
jg 0x10030d58
jmp 0x10030cc5
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x30], 0xc12265e3
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], 0xe0980db9
mov dword [ebp - 0x44], 0xd1022782
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x44]
add eax, dword [ebp - 0x40]
je 0x10030cff
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x10030d01
mov ecx, ebx
jmp 0x10030d03
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ecx, eax
setle dl
dec dword [ebp - 0x14]
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0xda4], eax
mov eax, dword [ebp - 0x48]
sub eax, 0x1a662cdb
neg eax
sbb eax, eax
inc eax
add eax, dword [ebp - 0x28]
imul eax, eax, 0xfff9
mov dword [ebp - 0x48], eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff2
jle 0x10030cc3
mov dword [ebp - 0x40], ebx
xor eax, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10030d8b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x280], 0x204e2db5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10030d72
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10030e28
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x280], 0
jne 0x10030e32
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x280], ebx
jne 0x10030dbb
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10030dbd
mov esi, ebx
jmp 0x10030dbf
xor eax, eax
mov esi, eax
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov edx, dword [ebp + eax*4 - 0x280]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x280]
cmp edx, eax
setl cl
mov dword [ebp - 0x18], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x280]
cmp esi, eax
mov eax, dword [ebp - 0x18]
setg cl
sub eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x280]
mov edx, dword [ebp - 0x10]
sub edx, eax
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
imul edx, dword [ebp + eax*4 - 0x280]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x280]
cmp eax, edx
setl cl
mov dword [ebp - 0x14], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jle 0x10030d93
xor edx, edx
mov dword [ebp - 0x18], 0xf32b5620
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0x280]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setge cl
cmp ecx, edi
sbb ecx, ecx
neg ecx
add eax, ecx
mov ecx, dword [ebp - 0x14]
sub ecx, eax
mov eax, dword [ebp - 0x27c]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp eax, edx
setne cl
xor eax, eax
cmp ecx, dword [ebp - 0x14]
jne 0x10030e8d
mov ecx, ebx
cmp dword [ebp - 0x18], eax
jne 0x10030e8f
mov ecx, eax
mov eax, dword [ebp - 0x28]
imul eax, ecx
xor ecx, ecx
push 4
cmp eax, 0x6b719d87
setne cl
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0xc58]
mov dword [ebp - 0x34], 0x5243b9c
mov dword [ebp - 0x38], 0xe1b8
call fcn.100171f5
push 2
lea ecx, [ebp - 0xb98]
mov byte [ebp - 4], 0xb
call fcn.100171f5
mov byte [ebp - 4], 0xc
xor eax, eax
mov dword [ebp - 0x10], 0x6b6eb6b9
mov dword [ebp - 0x40], 0xadd5d088
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], 0x624b
mov dword [ebp - 0x18], eax
jmp 0x10030f0e
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb98]
call fcn.10017262
mov dword [eax], 0x69f7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10030ef7
cmp dword [ebp - 0x10], 0x3a34c865
je 0x10030f57
mov ecx, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x10]
inc eax
add ecx, eax
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setg dl
imul eax, edx, 0xff60
test eax, eax
jne 0x10030f3d
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x40]
sub eax, 9
mov dword [ebp - 0x34], eax
jne 0x10030f57
xor eax, eax
mov esi, eax
jmp 0x10030f5b
mov esi, ebx
xor eax, eax
push eax
lea ecx, [ebp - 0xb98]
call fcn.10017262
dec dword [eax]
mov eax, dword [ebp - 0x40]
sub esi, eax
xor eax, eax
cmp esi, 0xde81
setle al
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
dec eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], eax
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x10030fb2
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]
lea ecx, [ebp - 0xb98]
mov byte [ebp - 4], 0xb
call fcn.1001725d
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10030feb
push dword [ebp - 0x10]
lea ecx, [ebp - 0x4c8]
call fcn.10017262
mov dword [eax], 0x768c0aa3
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10030fcc
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x10031013
push dword [ebp - 0x10]
lea ecx, [ebp - 0xc58]
call fcn.10017262
mov dword [eax], 0xd58e7ea
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10030ff4
xor eax, eax
mov dword [ebp - 0x1c], 0x1897a4a
mov dword [ebp - 0x38], 0x312b9482
push 3
mov dword [ebp - 0x10], eax
pop ecx
cmp dword [ebp - 0x10], ecx
jge 0x10031040
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x958], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x1003102c
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x10031060
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1024], 0xa1f05067
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10031048
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jg 0x100310cb
mov dword [ebp - 0x18], eax
jmp 0x1003107b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1650], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x1003106e
mov dword [ebp - 0x1024], ebx
xor edx, edx
mov eax, dword [ebp - 0x954]
mov eax, dword [ebp - 0x1c]
push 0
mov eax, dword [ebp + eax*4 - 0x958]
test eax, eax
mov eax, dword [ebp - 0x1c]
setns dl
xor ecx, ecx
add edx, dword [ebp + eax*4 - 0x958]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x958]
cmp edx, eax
pop eax
setne cl
mov dword [ebp - 0x101c], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jle 0x10031069
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x100310e1
push eax
push 0x1dea
push eax
call dword [sym.imp.GDI32.dll_GetBitmapBits]
mov esi, dword [ebp - 0x24]
lea ecx, [ebp - 0x4c8]
push 2
neg esi
call fcn.10017262
mov dword [eax], esi
xor eax, eax
test esi, esi
je 0x100315ba
mov byte [ebp - 0x1e], al
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0x1c], eax
push 3
call fcn.100171f5
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x440]
mov dword [ebp - 0x30], 0x921e124d
mov dword [ebp - 0x14], 5
push 2
call fcn.100171f5
mov byte [ebp - 4], 0xe
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x44], 0x88e6fcac
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10031169
push dword [ebp - 0x10]
lea ecx, [ebp - 0xb0]
call fcn.10017262
mov dword [eax], 0x82baef6e
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x1003114a
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10031191
push dword [ebp - 0x10]
lea ecx, [ebp - 0x440]
call fcn.10017262
mov dword [eax], 9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10031172
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xf
jl 0x10031293
jmp 0x100311a2
xor eax, eax
mov dword [ebp - 0x24], 0x3938dd44
mov dword [ebp - 0x40], 0x64854668
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x34], 6
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100311da
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x774], 0x9d089051
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100311c2
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100311f8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe80], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100311e3
xor eax, eax
push eax
lea ecx, [ebp - 0xb0]
call fcn.10017262
mov ecx, dword [ebp - 0x18]
mov eax, dword [eax]
inc dword [ebp - 0x18]
cmp eax, ecx
jl 0x10031216
mov esi, ebx
xor eax, eax
jmp 0x1003121a
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0xb0]
call fcn.10017262
mov ecx, dword [ebp - 0x24]
xor edx, edx
imul ecx, dword [ebp - 0x24]
push 2
cmp ecx, dword [eax]
lea ecx, [ebp - 0xb0]
setne dl
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
call fcn.10017262
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x774], esi
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xe7c]
add eax, dword [ebp - 0xe7c]
je 0x10031281
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10031283
mov eax, ebx
jmp 0x10031283
xor eax, eax
mov dword [ebp - 0x34], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xf
jge 0x100311a0
push ebx
lea ecx, [ebp - 0x440]
call fcn.10017262
cmp dword [eax], 0
je 0x100312fb
xor eax, eax
lea ecx, [ebp - 0x440]
push eax
call fcn.10017262
mov esi, 0x8d3fd905
lea ecx, [ebp - 0xb0]
mov dword [eax], esi
xor eax, eax
push eax
call fcn.10017262
xor ecx, ecx
xor ebx, ebx
cmp dword [eax], ebx
setge cl
xor eax, eax
cmp ecx, esi
setg al
cmp eax, 0xfffffff9
je 0x100312ef
xor eax, eax
lea ecx, [ebp - 0x440]
inc eax
push eax
call fcn.10017262
cmp dword [eax], ebx
je 0x100312f8
xor ebx, ebx
inc ebx
xor eax, eax
mov edi, ebx
jmp 0x100312ff
xor ebx, ebx
inc ebx
xor eax, eax
mov edi, eax
push eax
lea ecx, [ebp - 0xb0]
call fcn.10017262
mov ecx, dword [ebp - 0x18]
mov esi, eax
xor eax, eax
cmp edi, 0x270
setge al
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x30]
setge dl
sub ecx, edx
cmp ecx, dword [esi]
jne 0x10031478
or edi, 0xffffffff
lea ecx, [ebp - 0x9e8]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x40], 0x758ac421
push ebx
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x18], eax
jmp 0x10031369
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9e8]
call fcn.10017262
push 8
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10031353
push 2
lea ecx, [ebp - 0xb0]
call fcn.10017262
mov ecx, dword [ebp - 0x30]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0xb0]
setle bl
xor eax, eax
inc eax
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x10]
xor edx, edx
add ecx, dword [ebp - 0x1c]
mov esi, eax
cmp ecx, ebx
mov ecx, dword [ebp - 0x1c]
setl dl
cmp edx, 0xa2ca01dc
sbb edx, edx
xor eax, eax
neg edx
cmp edx, ecx
lea ecx, [ebp - 0xb0]
setne al
xor ebx, ebx
cmp eax, dword [esi]
setl bl
xor eax, eax
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x14]
xor edx, edx
cmp ebx, ecx
mov esi, eax
setne dl
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
inc edx
imul eax, edx, 0xf2db
sub eax, 0x6ccbc211
cmp dword [esi], eax
jle 0x10031405
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x10031405
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x1003140a
xor ebx, ebx
inc ebx
mov esi, ebx
push ebx
lea ecx, [ebp - 0x440]
call fcn.10017262
imul ecx, esi, 0xd870
xor edx, edx
cmp ecx, edi
setne dl
sub edx, dword [eax]
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0xfffffffe
setne cl
sub ecx, eax
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0xb0]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x10]
xor eax, eax
push eax
call fcn.10017262
xor eax, eax
lea ecx, [ebp - 0x9e8]
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x10]
xor edx, edx
test ecx, ecx
lea ecx, [ebp - 0x9e8]
setg dl
mov dword [eax], edx
call fcn.1001725d
jmp 0x1003158c
push 2
lea ecx, [ebp - 0x7f8]
call fcn.100171f5
mov byte [ebp - 4], 0x10
mov eax, 0xffff
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x34], 0xfffffff7
mov dword [ebp - 0x18], eax
jmp 0x100314b5
push dword [ebp - 0x18]
lea ecx, [ebp - 0x7f8]
call fcn.10017262
or ecx, 0xffffffff
mov dword [eax], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1003149f
push ebx
lea ecx, [ebp - 0x440]
call fcn.10017262
push ebx
lea ecx, [ebp - 0x7f8]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
call fcn.10017262
xor ebx, ebx
cmp dword [eax], ebx
jne 0x10031576
xor edi, edi
lea ecx, [ebp - 0x7f8]
inc edi
push edi
call fcn.10017262
cmp dword [eax], ebx
jne 0x10031568
xor eax, eax
lea ecx, [ebp - 0x440]
push eax
call fcn.10017262
mov esi, eax
lea ecx, [ebp - 0xb0]
xor eax, eax
push eax
call fcn.10017262
mov ecx, dword [esi]
push edi
cmp ecx, dword [eax]
lea ecx, [ebp - 0x7f8]
setl bl
call fcn.10017262
xor ecx, ecx
cmp ebx, dword [eax]
setge cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xb0]
push eax
call fcn.10017262
mov edx, dword [ebp - 0x34]
xor ecx, ecx
cmp dword [eax], edx
mov eax, dword [ebp - 0x2c]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x44]
je 0x10031568
xor ebx, ebx
xor eax, eax
inc ebx
jmp 0x1003156d
xor ebx, ebx
inc ebx
mov eax, ebx
cmp dword [ebp - 0x14], eax
jl 0x10031579
xor eax, eax
jmp 0x1003157b
xor ebx, ebx
inc ebx
mov eax, ebx
lea ecx, [ebp - 0x7f8]
mov dword [ebp - 0x34], eax
call fcn.1001725d
or edi, 0xffffffff
lea ecx, [ebp - 0x440]
call fcn.1001725d
lea ecx, [ebp - 0xb0]
call fcn.1001725d
cmp byte [ebp - 0x1e], 0
je 0x1003169b
xor eax, eax
push eax
call dword [sym.imp.GDI32.dll_CreateBrushIndirect]
jmp 0x1003169b
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x4c8]
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x40], 0x7f51ef99
push ebx
call fcn.10017262
push ebx
lea ecx, [ebp - 0x4c8]
mov esi, eax
call fcn.10017262
mov ecx, dword [eax]
mov dword [esi], ecx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x18], eax
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x1003166d
push 2
lea ecx, [ebp - 0x4c8]
call fcn.10017262
xor ecx, ecx
cmp dword [eax], 7
setne cl
xor edx, edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
setne dl
xor eax, eax
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], eax
jne 0x1003163b
push ebx
lea ecx, [ebp - 0x4c8]
call fcn.10017262
cmp dword [eax], 0
jne 0x1003163b
xor eax, eax
mov ecx, eax
jmp 0x1003163d
mov ecx, ebx
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setge dl
xor ecx, ecx
imul edx, dword [ebp - 0x14]
add edx, 0x4edb
imul edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
cmp edx, eax
setle cl
cmp ecx, 0xdaa237f4
jne 0x1003166b
mov eax, ebx
jmp 0x1003166d
xor eax, eax
dec eax
cmp eax, 0x1a094951
jne 0x10031680
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10031682
mov eax, ebx
jmp 0x10031682
xor eax, eax
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0xc58]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x34], eax
xor eax, eax
push eax
call fcn.10017262
inc dword [eax]
lea ecx, [ebp - 0xc58]
call fcn.1001725d
lea ecx, [ebp - 0x4c8]
mov dword [ebp - 4], edi
call fcn.1001725d
mov dword [ebp - 0x18], 0x8d4081c2
lea ecx, [ebp - 0xe94]
mov dword [ebp - 0x38], 0xe7e55059
mov dword [ebp - 0x38], 0x34215e1a
push ebx
call fcn.100171f5
mov dword [ebp - 4], 0x11
xor eax, eax
mov dword [ebp - 0x38], 0xfffffffa
mov dword [ebp - 0x38], 0xa2e42846
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x1003170e
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1498], 0x713b
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100316f5
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10031734
push dword [ebp - 0x10]
lea ecx, [ebp - 0xe94]
call fcn.10017262
mov dword [eax], 0x9d4346
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10031716
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x100317fe
mov dword [ebp - 0x38], edi
lea ecx, [ebp - 0x103c]
mov dword [ebp - 0x38], 0xfffffffd
push 0xfffffffffffffffe
pop eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 0xe1b1b552
mov dword [ebp - 0x38], 0xe033c225
mov dword [ebp - 0x38], str.zE_tE
mov dword [ebp - 0x38], 0xec0351a9
mov dword [ebp - 0x38], 0x7359b504
mov dword [ebp - 0x38], 0x4cbed562
mov dword [ebp - 0x38], 0xbb75da2c
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x38], 0xd021aa29
mov dword [ebp - 0x38], 0xfc353271
push ebx
call fcn.100171f5
mov byte [ebp - 4], 0x12
xor eax, eax
mov dword [ebp - 0x40], 0xfff6
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100317cf
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1508], 0x7e9f
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100317b6
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x100317e4
push dword [ebp - 0x10]
call fcn.10017262
push 8
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0x10]
lea ecx, [ebp - 0x103c]
cmp dword [ebp - 0x10], ebx
jl 0x100317d4
inc dword [ebp - 0x40]
mov byte [ebp - 4], 0x11
call fcn.1001725d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x1003173c
lea ecx, [ebp - 0xe94]
mov dword [ebp - 4], edi
call fcn.1001725d
movdqa xmm0, xmmword [0x10007bf0]
lea eax, [ebp - 0x1224]
push eax
lea eax, [ebp - 0x1234]
mov dword [ebp - 0x10], 0x8d40
push eax
lea ecx, [ebp - 0x14a8]
movdqu xmmword [ebp - 0x1234], xmm0
call fcn.10017271
lea ecx, [ebp - 0x256]
mov esi, eax
call fcn.10008cc3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x1054]
push dword [esi]
call fcn.10017237
mov dword [ebp - 4], 0x13
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x10]
jne 0x1003188d
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x100319eb
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x100319eb
push ebx
lea ecx, [ebp - 0x36c]
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x100318c2
push dword [ebp - 0x18]
lea ecx, [ebp - 0x36c]
call fcn.10017262
and dword [eax], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100318a7
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x100319d6
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x100319d3
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jg 0x10031943
jmp 0x100318e8
xor eax, eax
push 0xfffffffffffffffb
pop ecx
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x36c]
mov dword [ebp - 0x40], 0x21e0bec0
push eax
call fcn.10017262
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x36c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
push dword [ebp - 0x1c]
call fcn.10017262
push dword [ebp - 0x1c]
xor ebx, ebx
lea ecx, [ebp - 0x36c]
cmp dword [eax], 1
setne bl
call fcn.10017262
mov dword [eax], ebx
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jle 0x100318e6
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x36c]
call fcn.10017262
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x36c]
call fcn.10017262
mov ecx, dword [ebp - 0x18]
xor edx, edx
cmp ecx, 0x956a
lea ecx, [ebp - 0x36c]
setg dl
xor ebx, ebx
inc edx
cmp dword [eax], edx
setle bl
xor eax, eax
push eax
call fcn.10017262
xor ecx, ecx
cmp ebx, dword [eax]
setne cl
xor eax, eax
inc ecx
cmp ecx, 0x5224
setl al
xor ebx, ebx
inc ebx
cmp eax, 4
ja 0x100319b3
push ebx
lea ecx, [ebp - 0x1054]
call fcn.10017262
cmp dword [eax], 0
je 0x100319b3
mov esi, ebx
jmp 0x100319b7
xor eax, eax
mov esi, eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x36c]
call fcn.10017262
push 0
mov dword [eax], esi
dec dword [ebp - 0x1c]
pop eax
jns 0x100318d9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x32
jg 0x100318ca
lea ecx, [ebp - 0x36c]
call fcn.1001725d
lea ecx, [ebp - 0x1054]
mov dword [ebp - 4], edi
call fcn.1001725d
xor eax, eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], 0x7862fd41
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x10031a1d
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowInfo]
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10031a32
push 0x1b59
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 3
lea ecx, [ebp - 0x4e0]
call fcn.100171f5
xor eax, eax
mov dword [ebp - 4], 0x15
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10031a64
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x70], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10031a53
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], eax
jl 0x10031b48
mov dword [ebp - 0x10], 0xa0029bf3
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10031a89
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectA]
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10031b36
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10031ab6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x750], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10031a9d
xor eax, eax
mov dword [ebp - 0x750], eax
cmp dword [ebp - 0x750], eax
jg 0x10031b33
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setge cl
xor edx, edx
dec ecx
cmp ecx, 0x7643
setne dl
sub edx, dword [ebp + eax*4 - 0x70]
jne 0x10031af9
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
neg ecx
sbb ecx, ecx
neg ecx
mov edx, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x10]
sub edx, ecx
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, 0x1af9
jl 0x10031b20
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], ebx
xor eax, eax
inc dword [ebp - 0x750]
cmp dword [ebp - 0x750], eax
jle 0x10031ac4
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], eax
jle 0x10031a91
dec dword [ebp - 0x14]
jns 0x10031a70
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10031b5c
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
xor eax, eax
mov dword [ebp - 0x40], 9
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x48], edi
push 8
pop ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x14], 0x25d36729
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x10031b97
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xe24], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10031b82
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10031baa
push eax
push eax
call dword [sym.imp.USER32.dll_EnumWindows]
xor eax, eax
mov dword [ebp - 0x18], 0xfffffffa
cmp dword [ebp - 0x18], 0xfffffff2
jg 0x10031c52
jmp 0x10031bbf
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x30], 0xc12265e3
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], 0xe0980db9
mov dword [ebp - 0x44], 0xd1022782
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x44]
add eax, dword [ebp - 0x40]
je 0x10031bf9
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x10031bfb
mov ecx, ebx
jmp 0x10031bfd
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ecx, eax
setle dl
dec dword [ebp - 0x14]
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0xe24], eax
mov eax, dword [ebp - 0x48]
sub eax, 0x1a662cdb
neg eax
sbb eax, eax
inc eax
add eax, dword [ebp - 0x28]
imul eax, eax, 0xfff9
mov dword [ebp - 0x48], eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff2
jle 0x10031bbd
mov dword [ebp - 0x18], 0xafa9b64f
xor eax, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10031c89
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2c8], 0x204e2db5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10031c70
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10031d26
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x2c8], 0
jne 0x10031d30
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x2c8], ebx
jne 0x10031cb9
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10031cbb
mov esi, ebx
jmp 0x10031cbd
xor eax, eax
mov esi, eax
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov edx, dword [ebp + eax*4 - 0x2c8]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c8]
cmp edx, eax
setl cl
mov dword [ebp - 0x18], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x2c8]
cmp esi, eax
mov eax, dword [ebp - 0x18]
setg cl
sub eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c8]
mov edx, dword [ebp - 0x10]
sub edx, eax
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
imul edx, dword [ebp + eax*4 - 0x2c8]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c8]
cmp eax, edx
setl cl
mov dword [ebp - 0x14], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jle 0x10031c91
xor edx, edx
mov dword [ebp - 0x18], 0xf32b5620
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0x2c8]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setge cl
cmp ecx, edi
sbb ecx, ecx
neg ecx
add eax, ecx
mov ecx, dword [ebp - 0x14]
sub ecx, eax
mov eax, dword [ebp - 0x2c4]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp eax, edx
setne cl
xor eax, eax
cmp ecx, dword [ebp - 0x14]
jne 0x10031d8b
mov ecx, ebx
cmp dword [ebp - 0x18], eax
jne 0x10031d8d
mov ecx, eax
mov eax, dword [ebp - 0x28]
imul eax, ecx
xor ecx, ecx
push 2
cmp eax, 0x6b719d87
setne cl
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0xa00]
mov dword [ebp - 0x40], ebx
call fcn.100171f5
mov byte [ebp - 4], 0x16
xor eax, eax
mov dword [ebp - 0x10], 0x6b6eb6b9
mov dword [ebp - 0x40], 0xadd5d088
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], 0x624b
mov dword [ebp - 0x18], eax
jmp 0x10031df0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xa00]
call fcn.10017262
mov dword [eax], 0x69f7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10031dd9
cmp dword [ebp - 0x10], 0x3a34c865
je 0x10031e39
mov ecx, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x10]
inc eax
add ecx, eax
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setg dl
imul eax, edx, 0xff60
test eax, eax
jne 0x10031e1f
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x40]
sub eax, 9
mov dword [ebp - 0x34], eax
jne 0x10031e39
xor eax, eax
mov esi, eax
jmp 0x10031e3d
mov esi, ebx
xor eax, eax
push eax
lea ecx, [ebp - 0xa00]
call fcn.10017262
dec dword [eax]
mov eax, dword [ebp - 0x40]
sub esi, eax
xor eax, eax
cmp esi, 0xde81
setle al
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
dec eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], eax
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x10031e94
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]
lea ecx, [ebp - 0xa00]
mov byte [ebp - 4], 0x15
call fcn.1001725d
mov dword [ebp - 0x34], 0x5243b9c
xor eax, eax
mov dword [ebp - 0x1c], 0x1897a4a
mov dword [ebp - 0x38], 0x312b9482
push 3
mov dword [ebp - 0x10], eax
pop ecx
cmp dword [ebp - 0x10], ecx
jge 0x10031ed9
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x82c], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10031ec5
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x10031ef9
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xeb0], 0xa1f05067
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10031ee1
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jg 0x10031f64
mov dword [ebp - 0x18], eax
jmp 0x10031f14
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1690], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10031f07
mov dword [ebp - 0xeb0], ebx
xor edx, edx
mov eax, dword [ebp - 0x828]
mov eax, dword [ebp - 0x1c]
push 0
mov eax, dword [ebp + eax*4 - 0x82c]
test eax, eax
mov eax, dword [ebp - 0x1c]
setns dl
xor ecx, ecx
add edx, dword [ebp + eax*4 - 0x82c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x82c]
cmp edx, eax
pop eax
setne cl
mov dword [ebp - 0xea8], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jle 0x10031f02
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10031f7c
push eax
push 0x1dea
push eax
call dword [sym.imp.GDI32.dll_GetBitmapBits]
xor eax, eax
mov dword [ebp - 0x38], 0xe1b8
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x1c], eax
push 3
call fcn.100171f5
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x420]
mov dword [ebp - 0x30], 0x921e124d
mov dword [ebp - 0x14], 5
push 2
call fcn.100171f5
mov byte [ebp - 4], 0x18
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x44], 0x88e6fcac
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10031fea
push dword [ebp - 0x10]
lea ecx, [ebp - 0xf8]
call fcn.10017262
mov dword [eax], 0x82baef6e
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10031fcb
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10032012
push dword [ebp - 0x10]
lea ecx, [ebp - 0x420]
call fcn.10017262
mov dword [eax], 9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10031ff3
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xf
jl 0x10032114
jmp 0x10032023
xor eax, eax
mov dword [ebp - 0x24], 0x3938dd44
mov dword [ebp - 0x40], 0x64854668
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x34], 6
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x1003205b
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x674], 0x9d089051
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10032043
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10032079
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x106c], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10032064
xor eax, eax
push eax
lea ecx, [ebp - 0xf8]
call fcn.10017262
mov ecx, dword [ebp - 0x18]
mov eax, dword [eax]
inc dword [ebp - 0x18]
cmp eax, ecx
jl 0x10032097
mov esi, ebx
xor eax, eax
jmp 0x1003209b
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0xf8]
call fcn.10017262
mov ecx, dword [ebp - 0x24]
xor edx, edx
imul ecx, dword [ebp - 0x24]
push 2
cmp ecx, dword [eax]
lea ecx, [ebp - 0xf8]
setne dl
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
call fcn.10017262
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x674], esi
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1068]
add eax, dword [ebp - 0x1068]
je 0x10032102
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10032104
mov eax, ebx
jmp 0x10032104
xor eax, eax
mov dword [ebp - 0x34], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xf
jge 0x10032021
push ebx
lea ecx, [ebp - 0x420]
call fcn.10017262
cmp dword [eax], 0
je 0x1003217c
xor eax, eax
lea ecx, [ebp - 0x420]
push eax
call fcn.10017262
mov esi, 0x8d3fd905
lea ecx, [ebp - 0xf8]
mov dword [eax], esi
xor eax, eax
push eax
call fcn.10017262
xor ecx, ecx
xor ebx, ebx
cmp dword [eax], ebx
setge cl
xor eax, eax
cmp ecx, esi
setg al
cmp eax, 0xfffffff9
je 0x10032170
xor eax, eax
lea ecx, [ebp - 0x420]
inc eax
push eax
call fcn.10017262
cmp dword [eax], ebx
je 0x10032179
xor ebx, ebx
inc ebx
xor eax, eax
mov edi, ebx
jmp 0x10032180
xor ebx, ebx
inc ebx
xor eax, eax
mov edi, eax
push eax
lea ecx, [ebp - 0xf8]
call fcn.10017262
mov ecx, dword [ebp - 0x18]
mov esi, eax
xor eax, eax
cmp edi, 0x270
setge al
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x30]
setge dl
sub ecx, edx
cmp ecx, dword [esi]
jne 0x100322f9
or edi, 0xffffffff
lea ecx, [ebp - 0xbb0]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x40], 0x758ac421
push ebx
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x18], eax
jmp 0x100321ea
push dword [ebp - 0x18]
lea ecx, [ebp - 0xbb0]
call fcn.10017262
push 8
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100321d4
push 2
lea ecx, [ebp - 0xf8]
call fcn.10017262
mov ecx, dword [ebp - 0x30]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0xf8]
setle bl
xor eax, eax
inc eax
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x10]
xor edx, edx
add ecx, dword [ebp - 0x1c]
mov esi, eax
cmp ecx, ebx
mov ecx, dword [ebp - 0x1c]
setl dl
cmp edx, 0xa2ca01dc
sbb edx, edx
xor eax, eax
neg edx
cmp edx, ecx
lea ecx, [ebp - 0xf8]
setne al
xor ebx, ebx
cmp eax, dword [esi]
setl bl
xor eax, eax
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x14]
xor edx, edx
cmp ebx, ecx
mov esi, eax
setne dl
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
inc edx
imul eax, edx, 0xf2db
sub eax, 0x6ccbc211
cmp dword [esi], eax
jle 0x10032286
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x10032286
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x1003228b
xor ebx, ebx
inc ebx
mov esi, ebx
push ebx
lea ecx, [ebp - 0x420]
call fcn.10017262
imul ecx, esi, 0xd870
xor edx, edx
cmp ecx, edi
setne dl
sub edx, dword [eax]
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0xfffffffe
setne cl
sub ecx, eax
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0xf8]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x10]
xor eax, eax
push eax
call fcn.10017262
xor eax, eax
lea ecx, [ebp - 0xbb0]
push eax
call fcn.10017262
mov ecx, dword [ebp - 0x10]
xor edx, edx
test ecx, ecx
lea ecx, [ebp - 0xbb0]
setg dl
mov dword [eax], edx
call fcn.1001725d
jmp 0x1003240d
push 2
lea ecx, [ebp - 0x7d4]
call fcn.100171f5
mov byte [ebp - 4], 0x1a
mov eax, 0xffff
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x34], 0xfffffff7
mov dword [ebp - 0x18], eax
jmp 0x10032336
push dword [ebp - 0x18]
lea ecx, [ebp - 0x7d4]
call fcn.10017262
or ecx, 0xffffffff
mov dword [eax], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10032320
push ebx
lea ecx, [ebp - 0x420]
call fcn.10017262
push ebx
lea ecx, [ebp - 0x7d4]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
call fcn.10017262
xor ebx, ebx
cmp dword [eax], ebx
jne 0x100323f7
xor edi, edi
lea ecx, [ebp - 0x7d4]
inc edi
push edi
call fcn.10017262
cmp dword [eax], ebx
jne 0x100323e9
xor eax, eax
lea ecx, [ebp - 0x420]
push eax
call fcn.10017262
mov esi, eax
lea ecx, [ebp - 0xf8]
xor eax, eax
push eax
call fcn.10017262
mov ecx, dword [esi]
push edi
cmp ecx, dword [eax]
lea ecx, [ebp - 0x7d4]
setl bl
call fcn.10017262
xor ecx, ecx
cmp ebx, dword [eax]
setge cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xf8]
push eax
call fcn.10017262
mov edx, dword [ebp - 0x34]
xor ecx, ecx
cmp dword [eax], edx
mov eax, dword [ebp - 0x2c]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x44]
je 0x100323e9
xor ebx, ebx
xor eax, eax
inc ebx
jmp 0x100323ee
xor ebx, ebx
inc ebx
mov eax, ebx
cmp dword [ebp - 0x14], eax
jl 0x100323fa
xor eax, eax
jmp 0x100323fc
xor ebx, ebx
inc ebx
mov eax, ebx
lea ecx, [ebp - 0x7d4]
mov dword [ebp - 0x34], eax
call fcn.1001725d
or edi, 0xffffffff
lea ecx, [ebp - 0x420]
call fcn.1001725d
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x15
call fcn.1001725d
push 4
lea ecx, [ebp - 0xa30]
call fcn.100171f5
mov byte [ebp - 4], 0x1b
mov dword [ebp - 0x1c], 0xac204e2d
mov dword [ebp - 0x28], 0x88753e1e
mov dword [ebp - 0x24], 0xb90f9986
mov dword [ebp - 0x14], 0xbbde
mov dword [ebp - 0x1c], 0x1b
cmp dword [ebp - 0x1c], 2
jne 0x100324b9
xor eax, eax
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x10032488
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x14b8], 0x7f0a
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1003246f
xor eax, eax
inc dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
jmp 0x100324ab
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x100324a8
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_HideCaret]
xor eax, eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jle 0x10032490
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
je 0x10032463
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x28]
inc dword [ebp - 0x14]
test eax, eax
jne 0x100324cf
cmp dword [ebp - 0x1c], eax
je 0x100324d1
mov eax, ebx
mov ecx, dword [ebp - 0x24]
xor edx, edx
imul ecx, dword [ebp - 0x28]
imul ecx, eax
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x1c]
sub edx, 0x6d0811fc
neg edx
sbb edx, edx
add edx, 0xffff1850
neg edx
sbb edx, edx
inc edx
cmp edx, dword [ebp - 0x1c]
jge 0x10032648
mov dword [ebp - 0x18], 0x5b5cf0ad
xor ecx, ecx
mov dword [ebp - 0x40], 0xfffffff9
mov eax, dword [ebp - 0x24]
cmp eax, 0x25631cd1
mov eax, 0xecc33bab
setle cl
cmp eax, ecx
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x28]
jle 0x1003253a
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x18], eax
je 0x1003253c
mov ecx, ebx
mov eax, dword [ebp - 0x18]
add eax, ecx
jne 0x10032548
cmp dword [ebp - 0x28], eax
je 0x1003254a
mov eax, ebx
imul eax, eax, 0x2932
add eax, 0x700d1a0c
jne 0x1003255a
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp - 0x40]
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x40], eax
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x1003258a
push 0x18e4
push 0x1d2e
push eax
call dword [sym.imp.USER32.dll_RemoveMenu]
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
movdqa xmm0, xmmword [0x10007c80]
lea eax, [ebp - 0x1104]
push eax
lea eax, [ebp - 0x1114]
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x40], 0x3e64f147
lea ecx, [ebp - 0x14c8]
push eax
movdqu xmmword [ebp - 0x1114], xmm0
call fcn.10017271
lea ecx, [ebp - 0x1d1]
mov esi, eax
call fcn.10008cc3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x710]
push dword [esi]
call fcn.10017237
mov byte [ebp - 4], 0x1c
xor eax, eax
mov dword [ebp - 0x18], 0x7a9d2e81
mov dword [ebp - 0x14], 0xbb35b689
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x34], 0x7183
mov dword [ebp - 0x2c], 0x872a60d4
cmp dword [ebp - 0x1c], eax
jne 0x10032688
push 2
lea ecx, [ebp - 0x710]
call fcn.10017262
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x1003266c
push eax
lea ecx, [ebp - 0x710]
call fcn.10017262
cmp dword [eax], 0
je 0x1003266a
mov esi, ebx
xor eax, eax
jmp 0x1003266e
xor eax, eax
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], al
je 0x1003258a
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
call edi
push eax
call dword [sym.imp.USER32.dll_IsIconic]
jmp 0x10032590
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0x710]
call fcn.10017262
mov dword [eax], esi
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
je 0x10032688
xor eax, eax
jmp 0x1003268a
mov eax, ebx
imul eax, eax, 0x837
sub eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x28]
jg 0x100326a6
xor eax, eax
lea ecx, [ebp - 0x710]
push eax
call fcn.10017262
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x710]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x34]
sub eax, 0xfffffff8
neg eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x1b
call fcn.1001725d
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x100326f6
push dword [ebp - 0x10]
lea ecx, [ebp - 0x4e0]
call fcn.10017262
mov dword [eax], 0x768c0aa3
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100326df
mov dword [ebp - 0x14], 0xfffffffa
lea ecx, [ebp - 0x1084]
mov dword [ebp - 0x38], 0x8462751c
or esi, 0xffffffff
mov dword [ebp - 0x38], 0xaa43b2b7
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x38], 0x3880e033
mov dword [ebp - 0x38], ebx
push ebx
call fcn.100171f5
mov byte [ebp - 4], 0x1d
xor eax, eax
mov dword [ebp - 0x40], 0xb748abb7
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x1003275f
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1538], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10032746
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10032781
push dword [ebp - 0x10]
lea ecx, [ebp - 0x1084]
call fcn.10017262
mov dword [eax], esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10032767
xor eax, eax
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], eax
jl 0x10032830
jmp 0x10032791
xor eax, eax
mov dword [ebp - 0x38], 0xe550
lea ecx, [ebp - 0xecc]
mov dword [ebp - 0x38], 0x588e1b61
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 6
mov dword [ebp - 0x38], 0x39d98273
push 2
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], 0x1e
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x100327fe
push dword [ebp - 0x18]
lea ecx, [ebp - 0xecc]
call fcn.10017262
mov dword [eax], 0xdbf0cf86
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x100327df
xor eax, eax
inc dword [ebp - 0x40]
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x10032818
push 0x1ed8
call edi
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
lea ecx, [ebp - 0xecc]
mov byte [ebp - 4], 0x1d
call fcn.1001725d
dec dword [ebp - 0x14]
jns 0x1003278f
lea ecx, [ebp - 0x1084]
mov byte [ebp - 4], 0x1b
call fcn.1001725d
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x10032869
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa30]
call fcn.10017262
mov dword [eax], 0xd58e7ea
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1003284a
xor eax, eax
mov dword [ebp - 0x28], ebx
mov ebx, dword [sym.imp.GDI32.dll_SetPolyFillMode]
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 0x28], eax
jmp 0x100328df
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x100328d6
mov dword [ebp - 0x1c], 0x4543beb7
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x100328a6
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
xor eax, eax
mov dword [ebp - 0x1c], 0xffffffe8
jmp 0x100328ce
mov byte [ebp - 0x1e], al
cmp byte [ebp - 0x1e], 0
je 0x100328cb
push 0x2385
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call ebx
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jg 0x100328af
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x17
jne 0x1003288b
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xffffffe9
jge 0x1003287e
mov esi, dword [ebp - 0x3c]
lea ecx, [ebp - 0x4e0]
push 2
neg esi
call fcn.10017262
push 0xfffffffffffffff6
mov dword [eax], esi
pop eax
test esi, esi
je 0x10032eb8
movdqa xmm0, xmmword [0x10007c60]
lea ecx, [ebp - 0x14d8]
mov dword [ebp - 0x3c], 0x90be4438
mov dword [ebp - 0x1c], 0xfffffff7
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x12c4]
push eax
lea eax, [ebp - 0x12d4]
push eax
movdqu xmmword [ebp - 0x12d4], xmm0
call fcn.10017271
lea ecx, [ebp - 0x1d2]
mov esi, eax
call fcn.10008cc3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x790]
push dword [esi]
call fcn.10017237
mov byte [ebp - 4], 0x1f
xor eax, eax
mov dword [ebp - 0x24], 0x87292079
mov dword [ebp - 0x34], 0x7aeb
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10032992
push 2
lea ecx, [ebp - 0x59c]
call fcn.100171f5
xor eax, eax
mov byte [ebp - 4], 0x23
mov dword [ebp - 0x18], eax
jmp 0x10032ee1