Function at 0x10031e99
Capabilities:
Allocate thread local storage
Create pipe
Encrypt data using speck
Start service

Disassembly:
mov eax, 0x10062e66
call fcn.100620b0
sub esp, 0x8f4
push ebx
mov dword [ebp - 0x14], 0xc93b4e1
xor ebx, ebx
push esi
mov dword [ebp - 0x28], 0xec3
cmp dword [ebp - 0x28], 0x10c7
push edi
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x68], dl
mov dword [ebp - 0x5c], ecx
jle 0x10031f63
mov esi, ebx
mov dword [ebp - 0x4c], ebx
mov edi, ebx
mov dword [ebp - 0x14], ebx
mov ecx, edi
mov dword [ebp - 0x24], esi
mov edi, esi
mov eax, ebx
shl edi, cl
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x24], edi
mov ecx, eax
mov dword [ebp - 0x38], edi
mov esi, ebx
sar edi, cl
mov eax, edi
lea ecx, [ebp - 0x75c]
and eax, esi
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10031f12
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x75c]
call fcn.1003011d
inc esi
cmp esi, 0x1919
jl 0x10031ef6
mov eax, dword [ebp - 0x30]
mov edi, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x30], eax
cmp eax, 0x7828
jl 0x10031eed
mov edi, dword [ebp - 0x14]
mov esi, dword [ebp - 0x4c]
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x5cb7
jl 0x10031edc
inc esi
mov dword [ebp - 0x4c], esi
cmp esi, 0x6751
jl 0x10031ed7
xor esi, esi
mov dword [ebp - 0x14], ebx
inc esi
jmp 0x10031fb7
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x1c], 0xfffffff9
jmp 0x10031f87
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jne 0x10031f7e
mov dword [ebp - 0x1c], 0xfffffffd
jmp 0x10031fae
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
je 0x10031fab
push ebx
push 0x22b7
call dword [sym.imp.USER32.dll_GetWindowRect]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x1c
jge 0x10031f96
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe5
je 0x10031f6b
cmp dword [ebp - 0x28], 0xd37
jge 0x10031fd1
push 0x1000a568
call fcn.1004cdd6
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x14], 0xc93b4e1
mov dword [ebp - 0x14], ebx
jmp 0x1003202d
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x1c], 0xfffffff9
jmp 0x10031ffd
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jne 0x10031ff4
mov dword [ebp - 0x1c], 0xfffffffd
jmp 0x10032024
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
je 0x10032021
push ebx
push 0x22b7
call dword [sym.imp.USER32.dll_GetWindowRect]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x1c
jge 0x1003200c
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe5
je 0x10031fe1
mov dword [ebp - 0x14], 7
mov dword [ebp - 0x30], 0x7497f3c8
mov dword [ebp - 0x1c], ebx
jmp 0x10032057
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa8], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10032046
mov dword [ebp - 0x1c], ebx
jmp 0x10032073
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x40c], 9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10032062
mov eax, dword [ebp - 0xa8]
cmp dword [ebp - 0xa8], ebx
jne 0x10032089
mov esi, ebx
mov ecx, dword [ebp - 0xa8]
xor edx, edx
mov eax, dword [ebp - 0xa8]
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, esi
setl al
cmp eax, dword [ebp - 0xa8]
jg 0x100320b1
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x9c]
mov eax, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x14]
neg eax
push 0
sbb eax, eax
neg eax
mov eax, dword [ebp - 0x14]
pop ecx
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0xa0]
setle cl
cmp ecx, 0xfffffffd
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setg dl
sub edx, eax
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x40c], eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x38], 0xfffffffe
mov dword [ebp - 0x30], 0x467b47e0
mov dword [ebp - 0x24], 0xedb6b7be
mov dword [ebp - 0x3e0], 0xc23cea2f
mov dword [ebp - 0x3dc], 0xc23cea2f
mov dword [ebp - 0x3d8], 0xc23cea2f
mov dword [ebp - 0x3d4], 0xc23cea2f
mov dword [ebp - 0x64], 0xfb96f37d
mov dword [ebp - 0x14], ebx
jmp 0x1003216e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x640], 0xfffffffe
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1003215d
cmp dword [ebp - 0x1c], ebx
jne 0x1003218e
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
setge cl
mov dword [ebp - 0x638], ecx
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x30]
sub edx, eax
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
add edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
cmp edx, eax
setge cl
mov dword [ebp - 0x3d8], ecx
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x54], 0xc93b4e1
mov dword [ebp - 0x30], 0x38d5
cmp dword [ebp - 0x30], 0x3bea
jle 0x1003220e
mov esi, ebx
mov edi, ebx
mov eax, esi
mov ecx, 0x1060b0b8
cdq
idiv edi
mov eax, edx
cdq
push edx
push eax
call fcn.1002fc7c
inc edi
cmp edi, 0x29b2
jl 0x100321e8
inc esi
cmp esi, 0x1af9
jl 0x100321e6
mov dword [ebp - 4], 2
cmp dword [ebp - 0x30], 0x354a
jge 0x1003224b
mov edx, 0x1000a58c
mov ecx, 0x1060b0b8
call fcn.10031726
jmp 0x1003224b
or dword [ebp - 4], 0xffffffff
xor edi, edi
mov dword [ebp - 0x48], 0x64a6847d
inc edi
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
push 9
pop esi
je 0x10032275
push 0x14b2
push 0x166a
call dword [sym.imp.GDI32.dll_SetROP2]
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
je 0x10032288
push ebx
push ebx
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [ebp - 0x54], ebx
cmp dword [ebp - 0x54], 0xffffffe5
jne 0x10032d75
movdqa xmm0, xmmword [0x1000c4d0]
lea ecx, [ebp - 0x518]
push ecx
lea eax, [ebp - 0x508]
push eax
push ecx
lea ecx, [ebp - 0x460]
movdqu xmmword [ebp - 0x518], xmm0
call fcn.1002fded
push 2
lea ecx, [ebp - 0x2d0]
mov dword [ebp - 4], 4
call fcn.1002fd91
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x14], ebx
jmp 0x100322ee
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x2d0]
mov dword [eax + ecx*4], 0xa9ac70c3
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100322db
mov esi, dword [ebp - 0x2d0]
mov dword [esi + 4], ebx
mov ecx, dword [esi + 4]
mov eax, dword [ebp - 0x460]
cmp dword [eax + ecx*4], ebx
jne 0x10032365
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
je 0x1003235c
push ebx
push 0x22f0
push 0x10b8
push 0x2237
push 0x183e
push 0x25d
push 0x1989
push 0x255f
push 0x390
push 0x38b
push 0xf5c
push 0x15e3
push 0x14e
push 0x284
call dword [sym.imp.GDI32.dll_CreateFontA]
inc dword [esi + 4]
cmp dword [esi + 4], 3
jle 0x100322fd
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x2d0]
mov dword [ebp - 0x38], eax
call fcn.1002fe13
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x460]
call fcn.1002fe13
mov dword [ebp - 0x34], 0xfffffffe
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x14], ebx
jmp 0x100323a9
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x5ec], 0xfffffffc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10032398
mov dword [ebp - 0x34], ebx
jmp 0x100323f3
mov dword [ebp - 0x30], 0xfffffffd
mov dword [ebp - 0x30], 0x4990069f
mov dword [ebp - 0x30], 3
cmp dword [ebp - 0x34], ebx
je 0x100323d5
mov ecx, edi
cmp dword [ebp - 0x30], ebx
jne 0x100323d7
mov ecx, ebx
mov dword [ebp - 0x30], 0x822e6e7f
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x34]
imul eax, ecx
add eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffef
jne 0x100323b4
mov dword [ebp - 0x34], ebx
jmp 0x1003240f
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x5ec], 0x864ba8b3
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 3
jl 0x100323fe
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], 0xfffffff9
jmp 0x1003242a
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 4
jne 0x10032421
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], 0xd
cmp dword [ebp - 0x1c], 0x19
jne 0x1003248b
mov dword [ebp - 0x34], 0x7c203980
lea ecx, [ebp - 0x164]
push edi
call fcn.1002fd91
mov dword [ebp - 4], 5
mov dword [ebp - 0x14], ebx
jmp 0x10032472
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x164]
mov dword [eax + ecx*4], 0xebfb2c41
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1003245f
cmp dword [ebp - 0x1c], ebx
je 0x100324b6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x164]
call fcn.1002fe13
add dword [ebp - 0x1c], 0x8b7441da
mov dword [ebp - 0x34], 0xfffffffd
cmp dword [ebp - 0x34], 0x1c
jl 0x10032d6a
mov dword [ebp - 0x14], 4
mov dword [ebp - 0x14], 0x10
jmp 0x100327f5
mov dword [ebp - 0x34], 0xfffffff6
cmp dword [ebp - 0x34], ebx
jl 0x100327d1
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x30], 0x6977
cmp dword [ebp - 0x30], 0x6c16
jle 0x10032523
mov edi, ebx
mov esi, ebx
mov eax, esi
lea ecx, [ebp - 0x834]
and eax, edi
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100324f9
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x834]
call fcn.1003011d
inc esi
cmp esi, 0x18a1
jl 0x100324dd
inc edi
cmp edi, 0x3792
jl 0x100324db
xor edi, edi
inc edi
cmp dword [ebp - 0x30], 0x659f
jge 0x10032537
push 0x1000a5d0
call fcn.1004cdd6
pop ecx
mov dword [ebp - 4], 5
mov dword [ebp - 0x14], ebx
jmp 0x10032550
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x200], edi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10032543
push 6
mov dword [ebp - 0x1f8], ebx
pop esi
cmp dword [ebp - 0x1f8], 0x10
jle 0x100327c9
mov dword [ebp - 0x38], 0xfc9b996a
mov dword [ebp - 0x28], edi
cmp dword [ebp - 0x1c], ebx
je 0x1003263b
mov dword [ebp - 0x30], 0x1d1f
cmp dword [ebp - 0x30], 0x1fb8
jle 0x100325cd
mov eax, ebx
mov dword [ebp - 0x14], ebx
mov esi, ebx
mov edi, ebx
lea ecx, [edi + esi]
shl eax, cl
mov ecx, 0x1060b0b8
cdq
push edx
push eax
call fcn.1002fc7c
mov eax, dword [ebp - 0x14]
inc edi
cmp edi, 0x39ed
jl 0x10032598
inc esi
cmp esi, 0x7c46
jl 0x10032596
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x1fdb
jl 0x10032594
xor edi, edi
inc edi
mov dword [ebp - 0x14], 0x1151c3c3
mov byte [ebp - 4], 8
cmp dword [ebp - 0x30], 0x19fa
jge 0x10032611
mov edx, 0x1000a624
mov ecx, 0x1060b0b8
call fcn.10031726
jmp 0x10032611
push 6
mov dword [ebp - 4], 5
pop esi
mov dword [ebp - 0x14], 0xd
jmp 0x1003262e
mov dword [ebp - 0x3c], 0x649f6d4a
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jg 0x10032624
mov dword [ebp - 0x28], ebx
jmp 0x100327b9
mov dword [ebp - 0x4c], esi
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
je 0x10032653
push 0x1f5f
push ebx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x3c], ebx
cmp dword [ebp - 0x3c], 0x1a
jne 0x10032633
push edi
lea ecx, [ebp - 0x218]
call fcn.1002fd91
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x14], ebx
jmp 0x10032684
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x218]
mov dword [eax + ecx*4], 0xb4f5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10032671
cmp dword [ebp - 0x4c], ebx
je 0x1003269f
lea ecx, [ebp - 0x218]
mov byte [ebp - 4], 5
call fcn.1002fe13
jmp 0x10032633
mov dword [ebp - 0x2c], 0xcb0
cmp dword [ebp - 0x2c], 0xd54
jle 0x10032708
mov ecx, ebx
mov dword [ebp - 0x14], ebx
mov edi, ebx
mov eax, edi
mov dword [ebp - 0x30], 0x71de
mov dword [ebp - 0x24], eax
mov esi, ebx
xor eax, esi
xor eax, ecx
mov ecx, 0x1060b0b8
cdq
push edx
push eax
call fcn.1002fc7c
mov ecx, dword [ebp - 0x14]
inc esi
mov eax, dword [ebp - 0x24]
cmp esi, 0x497c
jl 0x100326c4
dec eax
dec dword [ebp - 0x30]
mov dword [ebp - 0x24], eax
jne 0x100326c2
inc edi
cmp edi, 0x7cfd
jl 0x100326b6
inc ecx
mov dword [ebp - 0x14], ecx
cmp ecx, 0x391f
jl 0x100326b4
xor edi, edi
push 6
inc edi
pop esi
mov dword [ebp - 0x4c], 0x12
jmp 0x10032746
mov eax, dword [ebp - 0x164]
mov dword [eax], edi
mov eax, dword [ebp - 0x218]
cmp dword [eax], ebx
je 0x10032739
mov eax, dword [ebp - 0x1f8]
mov ecx, edi
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x38]
sub eax, 3
jne 0x1003273b
mov ecx, ebx
mov eax, dword [ebp - 0x164]
mov dword [eax], ecx
dec dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 5
je 0x10032711
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x2c], 0x9f0
jge 0x1003278c
mov edx, 0x1000a654
mov ecx, 0x1060b0b8
call fcn.10031726
jmp 0x1003278c
mov dword [ebp - 4], 0xa
lea ecx, [ebp - 0x218]
mov byte [ebp - 4], 5
call fcn.1002fe13
inc dword [ebp - 0x3c]
jmp 0x10032656
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x164]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edi
jl 0x100327aa
inc dword [ebp - 0x1f8]
jmp 0x1003255f
inc dword [ebp - 0x34]
jmp 0x100324bd
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x164]
call fcn.1002fe13
inc dword [ebp - 0x1c]
jmp 0x1003243a
mov dword [ebp - 0x30], 0xa43d9532
dec dword [ebp - 0x30]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x16
jg 0x100327e8
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
je 0x10032816
push ebx
push 0x1191
push 0x1e63
push ebx
call dword [sym.imp.GDI32.dll_GetPaletteEntries]
push edi
lea ecx, [ebp - 0x170]
call fcn.1002fd91
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x1c], ebx
jmp 0x10032840
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x170]
mov dword [eax + ecx*4], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x1003282d
mov dword [ebp - 0x1c], ebx
jmp 0x1003285b
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1ac], 0x8216
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1003284a
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x1003296f
mov dword [ebp - 0x38], 0xa4d9a54e
mov dword [ebp - 0x14], 0x3a7e
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x38], 0x7f5e1753
mov dword [ebp - 0x38], edi
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x170]
neg ecx
sbb ecx, ecx
xor ebx, ebx
inc ecx
cmp dword [eax + edx*4], ecx
mov eax, dword [ebp - 0x14]
sete bl
xor ecx, ecx
sub ebx, eax
mov eax, dword [ebp - 0x170]
cmp ebx, dword [eax]
setle cl
xor eax, eax
cmp ecx, 0x2a1efe0c
setge al
xor ecx, ecx
cmp eax, 0x82ec
mov eax, dword [ebp - 0x1a8]
setl cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1a8]
setge dl
add ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x170]
mov ecx, dword [ebp - 0x64]
setne dl
xor ebx, ebx
cmp edx, dword [eax + esi*4]
mov eax, dword [ebp - 0x170]
setge bl
xor edx, edx
add ecx, ebx
neg ecx
cmp ecx, dword [eax + edi*4]
mov ecx, dword [ebp - 0x1a8]
mov eax, dword [ebp - 0x1a8]
setge dl
sub edx, 8
add ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1a8]
setne dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x44]
setle bl
xor ecx, ecx
cmp ebx, eax
sete cl
xor edi, edi
inc edi
cmp ecx, edi
sbb eax, eax
xor edx, edx
inc eax
cmp eax, 0xe948708e
mov eax, dword [ebp - 0x14]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x38], ecx
dec dword [ebp - 0x1c]
jns 0x1003286d
xor ebx, ebx
lea ecx, [ebp - 0x170]
call fcn.1002fe13
mov byte [ebp - 0x15], bl
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x48], 0x9f4ffcf3
mov dword [ebp - 0x48], 0x3d0b5486
mov dword [ebp - 0x44], 0x9e9d60a2
mov dword [ebp - 0x48], 0xee973417
mov dword [ebp - 0x1c], 0xfe24307a
mov dword [ebp - 0x48], 0x4a0426a7
mov dword [ebp - 0x48], 9
mov dword [ebp - 0x48], 0xe5e53494
mov dword [ebp - 0x48], 0x91023f12
mov dword [ebp - 0x38], 0x5f432603
mov dword [ebp - 0x14], 0x8fa48a2b
mov dword [ebp - 0x48], 3
mov dword [ebp - 0x2c], 0x8eb5ea28
mov dword [ebp - 0x58], 0x324015fb
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x3c], 0x4d40
cmp dword [ebp - 0x3c], 0x509c
jle 0x10032a57
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x14], 0x1649
mov edi, ebx
mov dword [ebp - 0x30], 0x6dad
mov esi, ebx
mov eax, edi
mov ecx, 0x1060b0b8
cdq
idiv esi
mov eax, edx
cdq
push edx
push eax
call fcn.1002fc7c
inc esi
cmp esi, 0x6e39
jl 0x10032a14
mov eax, dword [ebp - 0x24]
add edi, eax
dec dword [ebp - 0x30]
jne 0x10032a12
mov edi, dword [ebp - 0x28]
add eax, edi
dec dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
jne 0x10032a09
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x36b
jl 0x100329ff
xor edi, edi
inc edi
mov dword [ebp - 0x48], ebx
mov dword [ebp - 4], 0xd
cmp dword [ebp - 0x3c], 0x4971
jge 0x10032a79
mov edx, 0x1000a6dc
mov ecx, 0x1060b0b8
call fcn.10031726
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x24], 0x35a1
mov dword [ebp - 0x60], 0x509ef6e8
cmp dword [ebp - 0x4c], ebx
je 0x10032a9c
mov eax, dword [ebp - 0x24]
dec dword [ebp - 0x24]
test eax, eax
mov eax, edi
jne 0x10032a9e
mov eax, ebx
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x64], ebx
je 0x10032aa9
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
dec ecx
neg ecx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x1c]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, 0x6a9b
sete dl
xor ecx, ecx
cmp edx, eax
setg cl
cmp dword [ebp - 0x30], ecx
jge 0x10032b10
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
je 0x10032b5d
push ebx
call dword [sym.imp.GDI32.dll_DeleteObject]
jmp 0x10032b5d
mov dword [ebp - 0x24], 0x3b5
mov dword [ebp - 0x14], ebx
jmp 0x10032b57
mov dword [ebp - 0x48], ebx
xor ecx, ecx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x38], 0x4b2b3a3
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp eax, 0xfffffff8
mov eax, dword [ebp - 0x2c]
setne cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setl dl
xor ecx, ecx
cmp eax, edx
setle cl
mov dword [ebp - 0x1c], ecx
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe5
je 0x10032b1c
mov byte [ebp - 0x3d], bl
cmp byte [ebp - 0x3d], 0
je 0x10032b72
push ebx
push 0x656
call dword [sym.imp.GDI32.dll_SetTextColor]
cmp byte [ebp - 0x15], 0
je 0x10032d62
mov dword [ebp - 0x2c], 0x4182bd7b
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x24], 0xe60be628
mov dword [ebp - 0x30], 0x53dc
cmp dword [ebp - 0x30], 0x57a3
jle 0x10032bdb
mov edi, ebx
mov esi, ebx
lea eax, [esi + edi]
mov ecx, 0x1060b0b8
cdq
push edx
push eax
call fcn.1002fc7c
inc esi
cmp esi, 0x63f1
jl 0x10032ba1
inc edi
cmp edi, 0x639b
jl 0x10032b9f
push 0x266d
push 0x74f
push 0x1137
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
xor edi, edi
inc edi
mov dword [ebp - 4], 0xf
cmp dword [ebp - 0x30], 0x53c8
jge 0x10032bfa
mov edx, 0x1000a6f4
mov ecx, 0x1060b0b8
call fcn.10031726
or dword [ebp - 4], 0xffffffff
push 4
lea ecx, [ebp - 0x360]
call fcn.1002fd91
mov dword [ebp - 0x20], ebx
jmp 0x10032c46
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x5b8], 0x380d33b9
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10032c35
mov dword [ebp - 0x20], ebx
jmp 0x10032c5e
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x634], edi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10032c51
mov dword [ebp - 0x20], ebx
jmp 0x10032c79
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x360]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10032c69
mov eax, dword [ebp - 0x2c]
mov edx, ebx
cmp dword [ebp - 0x2c], ebx
je 0x10032c8b
mov edx, edi
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x2c], ebx
je 0x10032c96
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
cmp eax, edi
setle cl
xor eax, eax
cmp ecx, 0xffffffff
setl al
xor ecx, ecx
cmp edx, eax
setl cl
sub ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x2c]
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, dword [ebp - 0x1c]
add ecx, 0xfff7
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
cmp eax, edi
setl cl
xor edx, edx
cmp ecx, edi
setle dl
xor ecx, ecx
imul edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 0x29bf
setge al
sub eax, 3
neg eax
sbb eax, eax
inc eax
add eax, dword [ebp - 0x2c]
mov dword [ebp - 0x5b4], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x630], eax
add eax, 0xfffffff7
je 0x10032d23
mov edx, edi
cmp dword [ebp - 0x5b4], ebx
jne 0x10032d25
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
sete cl
xor eax, eax
test ecx, ecx
setg al
dec eax
je 0x10032d40
mov ecx, edi
cmp dword [ebp - 0x24], ebx
jne 0x10032d42
mov ecx, ebx
mov eax, dword [ebp - 0x360]
mov dword [eax + 4], ecx
lea ecx, [ebp - 0x360]
call fcn.1002fe13
push ebx
push 0x22b7
call dword [sym.imp.USER32.dll_GetWindowRect]
inc dword [ebp - 0x34]
jmp 0x10032499
dec dword [ebp - 0x54]
push 9
pop esi
jmp 0x1003228b
mov dword [ebp - 0x1c], 0x83111738
lea ecx, [ebp - 0x478]
mov dword [ebp - 0x4c], 2
push 3
call fcn.1002fd91
mov dword [ebp - 0x14], ebx
jmp 0x10032da4
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x478]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10032d95
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x4c], edi
push 0x11
mov dword [ebp - 0x1c], ebx
pop esi
cmp dword [ebp - 0x1c], esi
jl 0x10032df3
mov edi, dword [sym.imp.USER32.dll_CopyRect]
cmp dword [ebp - 0x4c], ebx
jne 0x10032df0
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10032de8
push ebx
push ebx
call edi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jge 0x10032dd6
xor edi, edi
inc edi
lea ecx, [ebp - 0x478]
call fcn.1002fe13
movdqa xmm0, xmmword [0x1000c4b0]
lea ecx, [ebp - 0x558]
push ecx
lea eax, [ebp - 0x548]
push eax
push ecx
lea ecx, [ebp - 0x108]
movdqu xmmword [ebp - 0x558], xmm0
call fcn.1002fded
mov dword [ebp - 4], esi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x4c], 0x2e12
cmp dword [ebp - 0x4c], 0x3106
jle 0x10032ec8
mov eax, ebx
mov dword [ebp - 0x24], ebx
mov ecx, ebx
mov dword [ebp - 0x14], ebx
cdq
mov edi, ebx
idiv ecx
mov ecx, edx
mov dword [ebp - 0x30], ecx
mov esi, ebx
mov eax, edi
cdq
idiv esi
mov eax, ecx
mov ecx, edx
shl eax, cl
lea ecx, [ebp - 0x78c]
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10032e7b
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x78c]
call fcn.1003011d
mov ecx, dword [ebp - 0x30]
inc esi
cmp esi, 0x2fde
jl 0x10032e58
inc edi
cmp edi, 0x4337
jl 0x10032e56
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
inc ecx
mov dword [ebp - 0x14], ecx
cmp ecx, 0x6997
jl 0x10032e4c
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x3bd6
jl 0x10032e47
push 0x11
xor edi, edi
pop esi
inc edi
mov dword [ebp - 0x30], 0xab6ce1a8
cmp dword [ebp - 0x4c], 0x2dd2
jge 0x10032ee3
push 0x1000a750
call fcn.1004cdd6
pop ecx
mov dword [ebp - 4], esi
mov ecx, dword [ebp - 0x108]
mov dword [ebp - 0x38], edi
mov dword [ecx], ebx
cmp dword [ecx], 0xffffffea
jl 0x10032fa7
mov dword [ebp - 0x30], 0x2acd
cmp dword [ebp - 0x30], 0x2e73
jle 0x10032f56
mov edi, ebx
mov esi, ebx
mov ecx, esi
mov eax, edi
shl eax, cl
lea ecx, [ebp - 0x8e8]
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10032f2c
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x8e8]
call fcn.1003011d
inc esi
cmp esi, 0x1c70
jl 0x10032f0e
inc edi
cmp edi, 0x61c6
jl 0x10032f0c
push 0x11
pop esi
mov byte [ebp - 0x15], bl
cmp dword [ebp - 0x30], 0x2809
jge 0x10032f6d
push 0x1000a7a8
call fcn.1004cdd6
pop ecx
mov dword [ebp - 4], esi
cmp byte [ebp - 0x15], 0
je 0x10032f9a
push 0x1a0f
push 0x286
push 0x2db
push 0xe05
push 0x18c
push 0xd25
call dword [sym.imp.GDI32.dll_PatBlt]
mov ecx, dword [ebp - 0x108]
dec dword [ecx]
jmp 0x10032ef1
mov eax, dword [ecx + 4]
mov dword [ecx + 0xc], eax
add eax, 7
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
je 0x100330d4
mov dword [ebp - 0x30], 0xcfd1f2e9
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10032fd7
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10032ff9
dec dword [ebp - 0x30]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x108]
cmp dword [eax + ecx*4], ebx
jne 0x10032ff9
dec dword [ebp - 0x20]
jns 0x10032fe3
xor edi, edi
inc edi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x108]
call fcn.1002fe13
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], 0x1fc65786
mov dword [ebp - 0x30], 0xf39281c1
mov dword [ebp - 0x38], 0xdfe9f48
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033038
push ebx
push 0xdc4
call dword [sym.imp.USER32.dll_GetSystemMenu]
cmp dword [ebp - 0x34], 0xad816f93
push 2
sbb eax, eax
xor ecx, ecx
inc eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
cmp eax, edi
pop esi
setg cl
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x34]
sub edx, eax
mov eax, dword [ebp - 0x34]
neg edx
push 3
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
imul ecx, dword [ebp - 0x34]
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x4fc]
mov dword [ebp - 0x20], 0x83111738
mov dword [ebp - 0x4c], esi
call fcn.1002fd91
mov dword [ebp - 4], 0x16
lea ecx, [ebp - 0x2e8]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x34], 0x40a98cee
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x30], 0xcdc14c38
push esi
call fcn.1002fd91
mov dword [ebp - 0x1c], ebx
jmp 0x100331e1
mov dword [ebp - 0x24], 0xa5e0
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100330ea
call dword [sym.imp.USER32.dll_ReleaseCapture]
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10032ff9
mov esi, dword [ebp - 0x108]
xor edi, edi
inc edi
mov dword [ebp - 0x30], 0x59785734
lea ecx, [ebp - 0x4d0]
push 2
call fcn.1002fd91
mov dword [ebp - 0x14], ebx
jmp 0x1003312f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x4d0]
mov dword [eax + ecx*4], 0x4b969b42
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1003311c
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033169
push 0x801
push ebx
push 0x2089
push 0xa07
push 0x2431
push ebx
push 0x1396
push 0x16a1
push 0x2148
call dword [sym.imp.USER32.dll_DrawIconEx]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x20], eax
jg 0x1003317a
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x108]
mov ecx, dword [esi + 8]
mov dword [eax + edx*4], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jne 0x100331a8
cmp dword [ebp - 0x24], ebx
jne 0x100331a8
mov eax, dword [ebp - 0x108]
mov edx, ebx
cmp dword [eax], ebx
je 0x100331aa
mov edx, edi
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x4d0]
call fcn.1002fe13
dec dword [ebp - 0x20]
jns 0x10033103
jmp 0x10032ffc
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x260], 0xc558bac0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100331d0
mov dword [ebp - 0x1c], ebx
jmp 0x100331ff
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2e8]
mov dword [eax + ecx*4], 0xe89405db
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x100331ec
cmp dword [ebp - 0x2c], edi
jg 0x1003320c
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2c]
setge cl
xor edx, edx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0x49687fd0
setg al
add eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x34]
imul eax, eax, 7
test eax, eax
jne 0x10033261
mov edx, ebx
cmp dword [ebp - 0x34], ebx
je 0x10033263
mov edx, edi
mov esi, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x25c], esi
mov eax, dword [ebp - 0x24]
cmp edx, eax
push 6
sete cl
xor edx, edx
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
pop eax
setg dl
neg edx
cmp eax, esi
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, edx
mov eax, dword [ebp - 0x2e8]
setle cl
mov dword [eax + 4], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x2c]
cmp eax, 0xfffffff8
mov eax, dword [ebp - 0x24]
setge cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x34]
setg dl
xor ecx, ecx
cmp edx, eax
setle cl
sub ecx, 0x2a7fad54
mov dword [ebp - 0x25c], ecx
lea ecx, [ebp - 0x2e8]
call fcn.1002fe13
mov dword [ebp - 0x14], 0x38e3
cmp dword [ebp - 0x14], 0x3bef
jle 0x1003336c
mov eax, ebx
mov dword [ebp - 0x24], ebx
mov esi, ebx
mov dword [ebp - 0x30], ebx
cdq
mov edi, ebx
idiv esi
mov esi, 0x2e91
mov dword [ebp - 0x38], edx
mov eax, edi
lea ecx, [ebp - 0x6f0]
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10033326
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x6f0]
call fcn.1003011d
add edi, dword [ebp - 0x38]
dec esi
jne 0x1003330c
mov esi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
inc esi
mov dword [ebp - 0x30], esi
cmp esi, 0x1ca8
jl 0x100332ff
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x7f4f
jl 0x100332fa
push 0x267a
call dword [sym.imp.USER32.dll_GetDC]
xor edi, edi
inc edi
push 2
lea ecx, [ebp - 0x1f4]
call fcn.1002fd91
cmp dword [ebp - 0x14], 0x35e6
jge 0x1003338d
push 0x1000a81c
call fcn.1004cdd6
pop ecx
mov dword [ebp - 4], 0x16
mov dword [ebp - 0x14], 0x3fcb50bf
mov dword [ebp - 0x38], 0x3d4a1cf0
mov dword [ebp - 0x14], ebx
jmp 0x100333ba
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1f4]
mov dword [eax + ecx*4], 0xeac8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100333a7
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100333d7
push ebx
push ebx
push 0x2481
push ebx
call dword [sym.imp.USER32.dll_AppendMenuA]
mov dword [ebp - 0x14], ebx
jmp 0x10033491
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x34], edi
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033401
push ebx
push 0x196c
call dword [sym.imp.USER32.dll_GetWindowInfo]
mov dword [ebp - 0x34], ebx
cmp dword [ebp - 0x34], edi
jg 0x1003348e
mov edi, dword [ebp - 0x1f4]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
add ecx, dword [edi + 4]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0x3e76
setne al
xor ebx, ebx
mov dword [ebp - 0x30], eax
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x1f4]
mov esi, dword [ebp - 0x34]
cmp eax, dword [ecx + edx*4]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1f4]
setne bl
imul esi, ebx
neg esi
sbb esi, esi
xor edx, edx
neg esi
cmp dword [eax + ecx*4], esi
mov eax, dword [ebp - 0x34]
setge dl
xor ecx, ecx
cmp edx, 0xfffffff6
setl cl
xor edx, edx
cmp ecx, eax
sete dl
sub edx, 0x6358
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x38], edx
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 1
jle 0x10033413
xor edi, edi
xor ebx, ebx
inc edi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jle 0x100333df
lea ecx, [ebp - 0x1f4]
call fcn.1002fe13
mov dword [ebp - 0x14], ebx
jmp 0x100334b9
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x4fc]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100334aa
push 2
lea ecx, [ebp - 0x3a8]
call fcn.1002fd91
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x28], 0x4867
cmp dword [ebp - 0x28], 0x4ada
jle 0x10033544
mov ecx, ebx
mov dword [ebp - 0x24], ebx
mov eax, ebx
mov dword [ebp - 0x30], ebx
mov edx, ecx
mov edi, ebx
mov ecx, eax
sar edx, cl
mov dword [ebp - 0x38], edx
mov esi, ebx
mov ebx, dword [ebp - 0x38]
mov ecx, esi
mov eax, edi
shl eax, cl
mov ecx, 0x1060b0b8
or eax, ebx
cdq
push edx
push eax
call fcn.1002fc7c
inc esi
cmp esi, 0x7d67
jl 0x100334fa
inc edi
push 0
pop ebx
cmp edi, 0x3d2a
jl 0x100334f5
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x30], eax
cmp eax, 0x436
jl 0x100334ea
inc ecx
mov dword [ebp - 0x24], ecx
cmp ecx, 0x2c36
jl 0x100334e5
xor edi, edi
inc edi
mov dword [ebp - 0x14], 0x13532fe2
mov byte [ebp - 4], 0x1a
cmp dword [ebp - 0x28], 0x4613
jge 0x10033588
mov edx, 0x1000a840
mov ecx, 0x1060b0b8
call fcn.10031726
jmp 0x10033588
push 9
mov dword [ebp - 4], 0x19
pop esi
mov dword [ebp - 0x14], ebx
jmp 0x100335a6
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3a8]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10033597
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], ebx
jl 0x100335de
mov dword [ebp - 0x28], 0x20002526
mov dword [ebp - 0x28], ebx
jmp 0x100335d3
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3a8]
mov dword [eax + ecx*4], 0x17be1879
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 2
jl 0x100335c0
dec dword [ebp - 0x14]
jns 0x100335b4
lea ecx, [ebp - 0x3a8]
mov byte [ebp - 4], 0x16
call fcn.1002fe13
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x20], ebx
jmp 0x10033917
cmp dword [ebp - 0x4c], ebx
jne 0x10033921
movdqa xmm0, xmmword [0x1000c4d0]
lea ecx, [ebp - 0x598]
push ecx
lea eax, [ebp - 0x588]
push eax
push ecx
lea ecx, [ebp - 0x418]
movdqu xmmword [ebp - 0x598], xmm0
call fcn.1002fded
push 2
lea ecx, [ebp - 0x300]
mov byte [ebp - 4], 0x1c
call fcn.1002fd91
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x14], ebx
jmp 0x1003366f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x300]
mov dword [eax + ecx*4], 0xa9ac70c3
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1003365c
mov esi, dword [ebp - 0x300]
mov dword [esi + 4], ebx
mov ecx, dword [esi + 4]
mov eax, dword [ebp - 0x418]
cmp dword [eax + ecx*4], ebx
jne 0x100336e6
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100336dd
push ebx
push 0x22f0
push 0x10b8
push 0x2237
push 0x183e
push 0x25d
push 0x1989
push 0x255f
push 0x390
push 0x38b
push 0xf5c
push 0x15e3
push 0x14e
push 0x284
call dword [sym.imp.GDI32.dll_CreateFontA]
inc dword [esi + 4]
cmp dword [esi + 4], 3
jle 0x1003367e
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x300]
mov dword [ebp - 0x38], eax
call fcn.1002fe13
lea ecx, [ebp - 0x418]
mov byte [ebp - 4], 0x16
call fcn.1002fe13
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x14], ebx
jmp 0x1003371f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x690], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10033712
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x684], eax
mov dword [ebp - 0x3c], 4
jmp 0x100337c0
mov dword [ebp - 0x28], edi
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x1003375b
push 0x1689
push 0xe4d
push 0x54a
call dword [sym.imp.GDI32.dll_GetPixel]
mov dword [ebp - 0x28], 0xfffffff3
jmp 0x100337b7
push 4
lea ecx, [ebp - 0x224]
call fcn.1002fd91
mov dword [ebp - 0x14], ebx
jmp 0x10033789
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x224]
mov dword [eax + ecx*4], 0xbd035c5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10033776
mov eax, dword [ebp - 0x224]
mov dword [eax], ebx
cmp dword [ebp - 0x28], ebx
jne 0x100337a9
mov eax, dword [ebp - 0x224]
inc dword [eax]
cmp dword [eax], 0x19
jl 0x10033797
lea ecx, [ebp - 0x224]
call fcn.1002fe13
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xfffffffe
jne 0x10033764
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x20
jg 0x1003373a
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033911
push 4
lea ecx, [ebp - 0x188]
call fcn.1002fd91
mov dword [ebp - 0x34], 8
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x14], ebx
jmp 0x10033806
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x188]
mov dword [eax + ecx*4], 0xffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x100337f3
mov dword [ebp - 0x34], ebx
jmp 0x100338f4
mov dword [ebp - 0x30], 0x3e8f0887
mov edx, 0xccce
mov dword [ebp - 0x14], 2
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x188]
sub edx, dword [eax + ecx*4]
je 0x1003384e
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100338f1
push ebx
call dword [sym.imp.GDI32.dll_CreateBrushIndirect]
jmp 0x100338f1
mov dword [ebp - 0x30], 5
xor edx, edx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x188]
cmp dword [eax + ecx*4], edi
setge dl
xor esi, esi
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x188]
cmp esi, dword [ecx + eax*4]
sbb eax, eax
add eax, 0x439376b0
neg eax
sbb eax, eax
inc eax
add eax, dword [ecx + edx*4]
je 0x1003389b
mov eax, edi
cmp dword [ebp - 0x24], ebx
jne 0x1003389d
mov eax, ebx
mov dword [ebp - 0x30], eax
xor edx, edx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setle dl
cmp edx, 7
jge 0x100338b5
mov eax, dword [ebp - 0x34]
mov esi, dword [ebp - 0x34]
xor ecx, ecx
mov eax, dword [ebp - 0x14]
cmp eax, edi
mov eax, dword [ebp - 0x34]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x188]
setle dl
add edx, dword [eax + esi*4]
cmp edx, dword [ebp - 0x14]
je 0x100338e1
mov eax, ebx
cmp dword [ebp - 0x14], ebx
je 0x100338e3
mov eax, edi
mov ecx, 0xa67b9c5c
cmp ecx, eax
sbb eax, eax
neg eax
mov dword [ebp - 0x14], eax
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 3
jle 0x10033814
lea ecx, [ebp - 0x188]
call fcn.1002fe13
push ebx
push ebx
call dword [sym.imp.USER32.dll_CopyRect]
inc dword [ebp - 0x20]
push 9
pop esi
cmp dword [ebp - 0x20], 0x11
jge 0x10033610
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4fc]
call fcn.1002fe13
mov dword [ebp - 0x1c], 0x83111738
lea ecx, [ebp - 0x42c]
mov dword [ebp - 0x4c], 2
push 3
call fcn.1002fd91
mov dword [ebp - 0x14], ebx
jmp 0x1003395f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x42c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10033950
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x1c], ebx
jmp 0x1003399e
cmp dword [ebp - 0x4c], ebx
jne 0x100339a4
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x1003399b
push ebx
push ebx
call dword [sym.imp.USER32.dll_CopyRect]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x11
jge 0x10033985
lea ecx, [ebp - 0x42c]
call fcn.1002fe13
mov dword [ebp - 0x14], 0xfffffff7
mov dword [ebp - 0x14], ebx
jmp 0x100339c8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x604], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100339bb
mov dword [ebp - 0x14], 2
cmp dword [ebp - 0x14], ebx
jl 0x10033a77
mov dword [ebp - 0x4c], 0x5d26
cmp dword [ebp - 0x4c], 0x5ddb
jle 0x10033a4b
mov eax, ebx
mov dword [ebp - 0x24], ebx
mov esi, ebx
mov edi, eax
mov dword [ebp - 0x30], 0x7653
mov eax, edi
lea ecx, [ebp - 0x864]
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10033a18
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x864]
call fcn.1003011d
add edi, esi
dec dword [ebp - 0x30]
jne 0x100339fe
mov eax, dword [ebp - 0x24]
dec esi
cmp esi, 0xffffe6ac
jg 0x100339f5
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x5fa8
jl 0x100339f3
cmp dword [ebp - 0x4c], 0x5985
jge 0x10033a5f
push 0x1000a8b4
call fcn.1004cdd6
pop ecx
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x604], ebx
jne 0x10033a77
dec dword [ebp - 0x14]
jmp 0x100339d5
mov dword [ebp - 0x14], 0xfffffff7
mov dword [ebp - 0x14], ebx
jmp 0x10033a90
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x664], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10033a83
mov dword [ebp - 0x14], 2
cmp dword [ebp - 0x14], ebx
jl 0x10033ab3
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x664], ebx
jne 0x10033ab3
dec dword [ebp - 0x14]
jns 0x10033aa2
mov eax, 0x100695fc
mov dword [ebp - 0x14], 0x254a
cmp dword [ebp - 0x14], 0x28a5
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x4c], 4
jle 0x10033b32
mov eax, ebx
mov dword [ebp - 0x24], ebx
mov esi, ebx
mov edi, eax
mov dword [ebp - 0x30], 0x2825
mov eax, edi
lea ecx, [ebp - 0x7e0]
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10033aff
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x7e0]
call fcn.1003011d
add edi, esi
dec dword [ebp - 0x30]
jne 0x10033ae5
mov eax, dword [ebp - 0x24]
inc esi
cmp esi, 0x1c59
jl 0x10033adc
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x1b97
jl 0x10033ada
cmp dword [ebp - 0x14], 0x21c2
jge 0x10033b46
push 0x1000a8d4
call fcn.1004cdd6
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x578]
movdqa xmm0, xmmword [0x1000c4b0]
lea eax, [ebp - 0x568]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x120]
movdqu xmmword [ebp - 0x578], xmm0
call fcn.1002fded
mov dword [ebp - 4], 0x21
xor edi, edi
mov eax, dword [ebp - 0x120]
inc edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x30], 0xab6ce1a8
mov dword [ebp - 0x38], edi
mov dword [eax], ebx
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033bc0
push 0x1a0f
push 0x286
push 0x2db
push 0xe05
push 0x18c
push 0xd25
call dword [sym.imp.GDI32.dll_PatBlt]
mov ecx, dword [ebp - 0x120]
dec dword [ecx]
cmp dword [ecx], 0xffffffea
jge 0x10033b93
mov eax, dword [ecx + 4]
mov dword [ecx + 0xc], eax
add eax, 7
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
je 0x10033c28
mov dword [ebp - 0x30], 0xcfd1f2e9
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033bf9
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10033ddc
dec dword [ebp - 0x30]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x120]
cmp dword [eax + ecx*4], ebx
jne 0x10033ddc
dec dword [ebp - 0x20]
jns 0x10033c09
jmp 0x10033ddc
mov dword [ebp - 0x1c], 0xa5e0
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033cfe
mov dword [ebp - 0x3c], 0x2398
cmp dword [ebp - 0x3c], 0x24dd
jle 0x10033cae
mov ecx, ebx
mov dword [ebp - 0x14], ebx
mov eax, ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x24], 0x75e3
mov edi, ecx
mov esi, ebx
mov ecx, eax
sar edi, cl
mov eax, edi
mov ecx, 0x1060b0b8
and eax, esi
cdq
push edx
push eax
call fcn.1002fc7c
inc esi
cmp esi, 0x18aa
jl 0x10033c68
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x14]
dec eax
dec dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
jne 0x10033c60
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp eax, 0x205
jl 0x10033c56
inc ecx
mov dword [ebp - 0x14], ecx
cmp ecx, 0x6b14
jl 0x10033c51
xor edi, edi
inc edi
call dword [sym.imp.USER32.dll_ReleaseCapture]
mov byte [ebp - 4], 0x22
cmp dword [ebp - 0x3c], 0x1fb9
jge 0x10033cf7
mov edx, 0x1000a908
mov ecx, 0x1060b0b8
call fcn.10031726
jmp 0x10033cf7
mov dword [ebp - 4], 0x21
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10033ddc
mov esi, dword [ebp - 0x120]
mov dword [ebp - 0x30], 0x59785734
lea ecx, [ebp - 0x3fc]
push 2
call fcn.1002fd91
mov dword [ebp - 0x14], ebx
jmp 0x10033d40
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3fc]
mov dword [eax + ecx*4], 0x4b969b42
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10033d2d
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033d7a
push 0x801
push ebx
push 0x2089
push 0xa07
push 0x2431
push ebx
push 0x1396
push 0x16a1
push 0x2148
call dword [sym.imp.USER32.dll_DrawIconEx]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x30]
jg 0x10033d8b
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x120]
mov ecx, dword [esi + 8]
mov dword [eax + edx*4], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jne 0x10033db9
cmp dword [ebp - 0x1c], ebx
jne 0x10033db9
mov eax, dword [ebp - 0x120]
mov edx, ebx
cmp dword [eax], ebx
je 0x10033dbb
mov edx, edi
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x3fc]
call fcn.1002fe13
dec dword [ebp - 0x20]
jns 0x10033d14
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x120]
call fcn.1002fe13
movdqa xmm0, xmmword [0x1000c4b0]
lea ecx, [ebp - 0x528]
push ecx
lea eax, [ebp - 0x518]
push eax
push ecx
lea ecx, [ebp - 0x1a0]
movdqu xmmword [ebp - 0x528], xmm0
call fcn.1002fded
mov dword [ebp - 4], 0x24
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x30], 0xab6ce1a8
mov dword [ebp - 0x38], edi
mov dword [eax], ebx
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033e5e
push 0x1a0f
push 0x286
push 0x2db
push 0xe05
push 0x18c
push 0xd25
call dword [sym.imp.GDI32.dll_PatBlt]
mov ecx, dword [ebp - 0x1a0]
dec dword [ecx]
cmp dword [ecx], 0xffffffea
jge 0x10033e31
mov eax, dword [ecx + 4]
mov dword [ecx + 0xc], eax
add eax, 7
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
je 0x10033fa6
mov dword [ebp - 0x30], 0xcfd1f2e9
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033e9b
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10033ebd
dec dword [ebp - 0x30]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1a0]
cmp dword [eax + ecx*4], ebx
jne 0x10033ebd
dec dword [ebp - 0x20]
jns 0x10033ea7
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a0]
call fcn.1002fe13
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x48], 0xe53d8da8
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x48], 0x3248c66f
mov dword [ebp - 0x48], 0x8d3c891c
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x28], 0x67de
cmp dword [ebp - 0x28], 0x6a3b
jle 0x10033f9e
push 0x1330
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov edx, ebx
mov dword [ebp - 0x14], ebx
mov eax, ebx
mov dword [ebp - 0x24], ebx
mov edi, ebx
mov dword [ebp - 0x30], ebx
lea ecx, [edi + eax]
mov esi, ebx
mov edi, edx
sar edi, cl
mov eax, edi
lea ecx, [ebp - 0x8b8]
or eax, esi
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10033f43
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x8b8]
call fcn.1003011d
inc esi
cmp esi, 0x137e
jl 0x10033f27
mov edi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
inc edi
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], edi
cmp edi, 0x1842
jl 0x10033f1e
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x58c3
jl 0x10033f19
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x5e67
jl 0x10033f14
push 0x13d9
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreatePipe]
xor edi, edi
inc edi
mov dword [ebp - 0x14], ebx
jmp 0x10034160
mov dword [ebp - 0x3c], 0xa5e0
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10033fbc
call dword [sym.imp.USER32.dll_ReleaseCapture]
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10033ebd
mov dword [ebp - 0x1c], 0x59785734
lea ecx, [ebp - 0x440]
push 2
call fcn.1002fd91
mov byte [ebp - 4], 0x25
mov dword [ebp - 0x28], 0x49d3
cmp dword [ebp - 0x28], 0x4cb8
jle 0x10034052
call dword [sym.imp.KERNEL32.dll_GetOEMCP]
mov eax, ebx
mov dword [ebp - 0x24], ebx
mov edi, ebx
mov dword [ebp - 0x14], ebx
cdq
idiv edi
mov dword [ebp - 0x30], 0x51d6
mov edi, edx
mov esi, ebx
mov eax, edi
mov ecx, 0x1060b0b8
xor eax, esi
cdq
push edx
push eax
call fcn.1002fc7c
inc esi
cmp esi, 0x7160
jl 0x10034012
inc edi
dec dword [ebp - 0x30]
jne 0x10034010
mov edi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x5300
jl 0x10034004
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x2792
jl 0x10033fff
xor edi, edi
inc edi
mov byte [ebp - 4], 0x26
cmp dword [ebp - 0x28], 0x4721
jge 0x10034095
mov edx, 0x1000a988
mov ecx, 0x1060b0b8
call fcn.10031726
jmp 0x10034095
mov dword [ebp - 4], 0x25
mov dword [ebp - 0x14], ebx
jmp 0x100340b4
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x440]
mov dword [eax + ecx*4], 0x4b969b42
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100340a1
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100340ee
push 0x801
push ebx
push 0x2089
push 0xa07
push 0x2431
push ebx
push 0x1396
push 0x16a1
push 0x2148
call dword [sym.imp.USER32.dll_DrawIconEx]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x20], eax
jg 0x100340ff
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1a0]
mov eax, dword [ecx + 8]
mov dword [ecx + edx*4], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jne 0x1003412d
cmp dword [ebp - 0x3c], ebx
jne 0x1003412d
mov eax, dword [ebp - 0x1a0]
mov edx, ebx
cmp dword [eax], ebx
je 0x1003412f
mov edx, edi
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0x24
call fcn.1002fe13
dec dword [ebp - 0x20]
jmp 0x10033fc3
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x72c], edi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10034153
cmp dword [ebp - 0x28], 0x6524
jge 0x1003417a
push 0x1000aa28
call fcn.1004cdd6
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x318]
dec dword [ebp - 0x3c]
mov dword [ebp - 0x2c], 0xde0b
push 3
call fcn.1002fd91
mov dword [ebp - 4], 0x2a
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x1c], ebx
jmp 0x100341bb
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x318]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100341ab
mov dword [ebp - 0x1c], ebx
jmp 0x100341d3
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x4ac], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100341c6
cmp dword [ebp - 0x2c], ebx
je 0x10034328
mov dword [ebp - 0x28], 0x23f126c7
mov dword [ebp - 0x38], 0x45c761b8
mov dword [ebp - 0x2c], 2
cmp dword [ebp - 0x2c], ebx
jl 0x100343a7
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x30], 0x2324015f
mov dword [ebp - 0x14], 0x4f9c
cmp dword [ebp - 0x14], 0x50a3
jle 0x10034266
mov dword [ebp - 0x24], ebx
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x30], 0x4fd9
mov ebx, dword [ebp - 0x24]
mov ecx, edi
mov eax, ebx
sar eax, cl
mov ecx, 0x1060b0b8
cdq
push edx
push eax
call fcn.1002fc7c
add edi, esi
dec dword [ebp - 0x30]
jne 0x1003422f
inc esi
push 0
pop ebx
cmp esi, 0xa9c
jl 0x10034223
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x1d68
jl 0x10034221
xor edi, edi
inc edi
mov dword [ebp - 0x38], 0x9ae86a67
mov byte [ebp - 4], 0x2b
cmp dword [ebp - 0x14], 0x4bb8
jge 0x100342b0
mov edx, 0x1000aa68
mov ecx, 0x1060b0b8
call fcn.10031726
jmp 0x100342b0
mov dword [ebp - 4], 0x2a
mov edx, edi
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
sub edx, eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x318]
mov dword [eax + ecx*4], edx
imul eax, edx, 0x3cfc
test eax, eax
jne 0x100342e9
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], edi
xor edx, edx
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
mov eax, dword [ebp - 0x28]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
add ecx, dword [ebp - 0x28]
cmp ecx, 0x642e5f0e
setg al
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x38], eax
dec dword [ebp - 0x2c]
jmp 0x100341f7
push 3
lea ecx, [ebp - 0x378]
call fcn.1002fd91
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x30], 0x5778c4b1
mov dword [ebp - 0x64], 0x37a54743
mov dword [ebp - 0x14], ebx
jmp 0x1003435e
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x378]
mov dword [eax + ecx*4], 0x2dfce958
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1003434b
cmp dword [ebp - 0x24], ebx
je 0x1003436c
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x378]
xor edx, edx
mov ecx, dword [ebp - 0x4a8]
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0x4a8]
cmp ecx, eax
lea ecx, [ebp - 0x378]
setl dl
xor eax, eax
add edx, esi
neg esi
cmp esi, edx
setl al
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x64], eax
call fcn.1002fe13
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x318]
call fcn.1002fe13
push 3
lea ecx, [ebp - 0x3c0]
call fcn.1002fd91
mov dword [ebp - 4], 0x2d
mov dword [ebp - 0x28], 0x381e
cmp dword [ebp - 0x28], 0x3a72
jle 0x10034467
push ebx
push ebx
push ebx
push 0x149a
call dword [sym.imp.GDI32.dll_CreateEnhMetaFileW]
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x30], 0x4c9c
mov edi, dword [ebp - 0x24]
mov esi, ebx
mov eax, edi
lea ecx, [ebp - 0x708]
cdq
idiv esi
mov eax, edx
cdq
push edx
push eax
call fcn.1000d8f0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003441d
mov eax, dword [eax]
push eax
call fcn.1004cdd6
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x708]
call fcn.1003011d
inc esi
cmp esi, 0x6526
jl 0x100343fe
mov edi, dword [ebp - 0x14]
add dword [ebp - 0x24], edi
dec dword [ebp - 0x30]
jne 0x100343f9
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x5f8f
jl 0x100343ef
push 0x230a
push ebx
push ebx
push 0x23f5
call dword [sym.imp.USER32.dll_MessageBoxW]
xor edi, edi
inc edi
mov dword [ebp - 0x48], 0x941fc9a5
cmp dword [ebp - 0x28], 0x3779
jge 0x10034482
push 0x1000aaf8
call fcn.1004cdd6
pop ecx
mov dword [ebp - 0x1c], ebx
jmp 0x1003449a
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x3c0]
mov dword [eax + ecx*4], 2
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10034487
mov dword [ebp - 0x1c], ebx
jmp 0x100344b6