Function at 0x11120040
Capabilities:
Capture screenshot
Check for time delay via gettickcount
Encode data using xor
Enumerate gui resources
Log keystrokes via polling
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x111e5c26
mov eax, dword fs:[0]
push eax
mov eax, 0x1860
call fcn.111d92c0
mov eax, dword [0x11279148]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0x10]
xor ebx, ebx
push ebx
mov edi, ecx
mov ecx, dword [ebp + 0xc]
push ebx
mov dword [ebp - 0x174c], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x16ec], ecx
mov ecx, dword [ebp + 0x1c]
push ebx
push str.DISPLAY
mov dword [ebp - 0x16d0], edi
mov dword [ebp - 0x1754], edx
mov dword [ebp - 0x16e4], eax
mov dword [ebp - 0x1790], ecx
call dword [sym.imp.GDI32.dll_CreateDCW]
mov esi, eax
push ebx
mov dword [ebp - 0x1730], esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push 0xe
push esi
mov dword [ebp - 0x16d8], eax
mov dword [ebp - 0x1718], ebx
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push 0xc
push esi
mov dword [ebp - 0x1760], eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov ecx, dword [ebp - 0x1760]
imul ecx, eax
mov dword [ebp - 0x170c], ecx
cmp ecx, 0x10
mov ecx, dword [ebp + 0x14]
jne 0x1112011b
cmp ecx, 8
jne 0x1112011b
cmp dword [edi + 0x79c], 0x32
jl 0x11120125
mov dword [ebp - 0x170c], 0x20
jmp 0x11120125
mov edx, 0x20
cmp ecx, 0x18
jge 0x11120127
mov edx, ecx
mov eax, dword [ebp - 0x16ec]
imul eax, edx
add eax, 0x1f
cdq
and edx, 0x1f
lea esi, [edx + eax]
sar esi, 5
add esi, esi
add esi, esi
mov dword [ebp - 0x1720], esi
mov byte [edi + 0x7a0], bl
cmp ecx, 8
jne 0x111201a8
cmp dword [ebp - 0x170c], 0x20
jne 0x111201a8
cmp dword [edi + 0x79c], 0x32
jl 0x111201a8
mov ecx, dword [0x1127aa68]
push ebx
push ebx
push str.DisableScrapeDynPal
push str.Client
call fcn.110bbc00
test eax, eax
jne 0x111201a5
call fcn.110ee3d0
mov dword [edi + 0x798], eax
cmp eax, ebx
je 0x111201a5
mov esi, dword [ebp - 0x16ec]
add esi, esi
add esi, esi
mov dword [ebp - 0x1720], esi
mov byte [edi + 0x7a0], 1
mov ecx, dword [ebp + 0x14]
movzx edx, byte [edi + 0x7a0]
mov eax, dword [edi + 0x79c]
push edx
push eax
push ecx
push str.Scrape__color_bpp_d__Quality_d__dynpal_d_n
call fcn.111bd7b0
mov eax, dword [ebp - 0x16e4]
imul eax, esi
lea esi, [eax + eax]
mov dword [ebp - 0x1798], eax
mov eax, 0x51eb851f
imul esi
mov eax, dword [ebp - 0x16ec]
imul eax, dword [ebp - 0x170c]
sar edx, 4
mov ecx, edx
add eax, 0x1f
shr ecx, 0x1f
add ecx, edx
cdq
and edx, 0x1f
add eax, edx
lea ecx, [ecx + esi + 0x120]
sar eax, 5
mov dword [ebp - 0x1714], ecx
add eax, eax
add ecx, 0xc
add eax, eax
push ecx
mov dword [ebp - 0x16f8], eax
call dword [sym.imp.MSVCR100.dll_malloc]
mov cl, byte [ebp + 0x14]
add esp, 0x14
mov dword [eax], ebx
push ebx
mov dword [eax + 4], ebx
push 0xffffffffffffffff
mov dword [eax + 8], ebx
mov edx, 0x9e
push str.ScrapeFrames
mov word [eax], dx
mov byte [eax + 0xa], cl
mov ecx, dword [0x1127aa68]
push str.Client
mov dword [ebp - 0x16fc], eax
mov byte [ebp - 0x170d], bl
call fcn.110bbc00
cmp eax, ebx
jne 0x11120268
mov byte [ebp - 0x16d1], bl
jmp 0x1112027e
mov byte [ebp - 0x16d1], 1
jg 0x1112027e
cmp dword [edi + 0x50], 6
jge 0x1112027e
mov byte [ebp - 0x170d], 1
push esi
call dword [sym.imp.MSVCR100.dll_malloc]
push 0x428
mov dword [ebp - 0x16f0], eax
lea edx, [ebp - 0x16cc]
add eax, esi
push ebx
push edx
mov dword [ebp - 0x17ac], eax
call sub.MSVCR100.dll_memset
mov eax, dword [ebp - 0x16ec]
mov dx, word [ebp - 0x170c]
add esp, 0x10
mov ecx, 1
mov dword [ebp - 0x16cc], 0x28
mov dword [ebp - 0x16c8], eax
mov word [ebp - 0x16c0], cx
mov dword [ebp - 0x16ac], ebx
mov dword [ebp - 0x16bc], ebx
mov dword [ebp - 0x16b8], ebx
mov word [ebp - 0x16be], dx
cmp byte [ebp - 0x16d1], bl
je 0x11120302
mov eax, ecx
sub eax, dword [ebp - 0x16e4]
sub eax, dword [ebp - 0x1754]
jmp 0x11120310
mov eax, dword [ebp - 0x16e4]
lea ecx, [eax + eax]
or eax, 0xffffffff
sub eax, ecx
cmp dword [ebp - 0x170c], 8
mov dword [ebp - 0x16c4], eax
mov dword [ebp - 0x1734], ebx
mov dword [ebp - 0x1760], ebx
mov dword [ebp - 0x17c4], ebx
jg 0x111204d3
push 0x400
lea edx, [ebp - 0xa1c]
push ebx
push edx
call sub.MSVCR100.dll_memset
mov ecx, dword [ebp - 0x1730]
add esp, 0xc
lea eax, [ebp - 0xa1c]
push eax
push 0x100
push ebx
push ecx
call dword [sym.imp.GDI32.dll_GetSystemPaletteEntries]
cmp eax, ebx
je 0x111204cd
push 0x408
push 1
mov dword [ebp - 0x1718], 1
call dword [sym.imp.MSVCR100.dll_calloc]
lea edi, [eax + 4]
mov dword [eax], 0x1000300
mov ecx, 0x100
lea esi, [ebp - 0xa1c]
add esp, 8
mov dword [ebp - 0x1760], eax
rep movsd dword es:[edi], dword [esi]
xor eax, eax
jmp 0x111203b0
movzx edx, byte [ebp + eax - 0xa1a]
movzx ecx, byte [ebp + eax - 0xa1b]
mov byte [ebp + eax - 0x16a4], dl
movzx edx, byte [ebp + eax - 0xa1c]
mov byte [ebp + eax - 0x16a3], cl
movzx ecx, byte [ebp + eax - 0xa16]
mov byte [ebp + eax - 0x16a2], dl
movzx edx, byte [ebp + eax - 0xa17]
mov byte [ebp + eax - 0x16a0], cl
movzx ecx, byte [ebp + eax - 0xa18]
mov byte [ebp + eax - 0x169f], dl
movzx edx, byte [ebp + eax - 0xa12]
mov byte [ebp + eax - 0x169e], cl
movzx ecx, byte [ebp + eax - 0xa13]
mov byte [ebp + eax - 0x169c], dl
movzx edx, byte [ebp + eax - 0xa14]
mov byte [ebp + eax - 0x169b], cl
movzx ecx, byte [ebp + eax - 0xa0e]
mov byte [ebp + eax - 0x169a], dl
movzx edx, byte [ebp + eax - 0xa0f]
mov byte [ebp + eax - 0x1698], cl
movzx ecx, byte [ebp + eax - 0xa10]
mov byte [ebp + eax - 0x16a1], bl
mov byte [ebp + eax - 0x169d], bl
mov byte [ebp + eax - 0x1699], bl
mov byte [ebp + eax - 0x1697], dl
mov byte [ebp + eax - 0x1696], cl
mov byte [ebp + eax - 0x1695], bl
add eax, 0x10
cmp eax, 0x400
jl 0x111203b0
mov esi, dword [ebp - 0x1760]
push esi
call dword [sym.imp.GDI32.dll_CreatePalette]
mov edi, dword [ebp - 0x16d8]
push ebx
push eax
push edi
mov dword [ebp - 0x1760], eax
call dword [sym.imp.GDI32.dll_SelectPalette]
push edi
mov dword [ebp - 0x17c4], eax
call dword [sym.imp.GDI32.dll_RealizePalette]
push esi
call dword [sym.imp.MSVCR100.dll_free]
mov edi, dword [ebp - 0x16d0]
add esp, 4
mov eax, dword [ebp - 0x16c4]
mov ecx, dword [edi + 0x50]
mov dword [ebp - 0x175c], ebx
cmp ecx, 5
je 0x111204fd
cmp ecx, 6
jl 0x111205c5
call fcn.11107510
test eax, eax
je 0x111205c5
mov eax, dword [ebp - 0x16c4]
cdq
mov esi, eax
xor esi, edx
sub esi, edx
imul esi, dword [ebp - 0x16f8]
lea edx, [ebp - 0x184c]
push edx
call fcn.11144330
add esp, 4
test eax, eax
je 0x111205c5
cmp byte [0x1127ad8d], bl
je 0x11120531
mov eax, str.DNARC_DIB
jmp 0x11120544
call fcn.111babb0
test al, al
mov eax, str.CICAgentDIB
jne 0x11120544
mov eax, str.Client32DIB
push eax
add esi, 0x42c
push esi
push ebx
push 4
lea eax, [ebp - 0x184c]
push eax
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov dword [edi + 0x854], eax
cmp eax, ebx
je 0x111205c5
push ebx
push ebx
push ebx
push 2
push eax
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov dword [edi + 0x7c8], eax
cmp eax, ebx
je 0x111205b2
mov ecx, dword [ebp - 0x16d0]
mov dword [eax], 0x42c
mov edi, dword [ecx + 0x7c8]
add edi, 4
mov ecx, 0x10a
lea esi, [ebp - 0x16cc]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x16d0]
mov dword [ebp - 0x175c], 0x42c
jmp 0x111205c5
mov edx, dword [edi + 0x854]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [edi + 0x854], ebx
mov eax, dword [ebp - 0x175c]
mov ecx, dword [edi + 0x854]
push eax
push ecx
mov ecx, dword [ebp - 0x16d8]
lea edx, [ebp - 0x1734]
push edx
push ebx
lea eax, [ebp - 0x16cc]
push eax
push ecx
call dword [sym.imp.GDI32.dll_CreateDIBSection]
mov esi, eax
mov dword [ebp - 0x1784], esi
cmp esi, ebx
jne 0x11120612
push 0x723
push str.newscrape.cpp
push str.hDib
call fcn.11067750
add esp, 0xc
cmp dword [edi + 0x854], ebx
je 0x11120626
push str.Winlogon
mov ecx, edi
call fcn.1111e700
mov edx, dword [ebp - 0x16d8]
push esi
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x175c], eax
cmp dword [0x1127ecf0], ebx
je 0x11120658
mov ecx, dword [ebp - 0x16d8]
push ecx
push eax
push esi
push str.hDib___x__hbmpold___x__hdcS___x_n
call fcn.111bd7b0
add esp, 0x10
mov eax, dword [ebp + 0x14]
cmp eax, 8
jg 0x11120743
mov dword [ebp - 0x1718], 1
cmp eax, 1
jne 0x1112067f
mov eax, 0x11273b68
mov edx, 2
jmp 0x111206f9
cmp eax, 4
jne 0x11120690
mov eax, 0x11273b28
mov edx, 0x10
jmp 0x111206f9
cmp byte [edi + 0x7a0], bl
jne 0x111206c9
push 0x400
push 0x11273728
push 0x1127e8f0
call sub.MSVCR100.dll_memcmp
add esp, 0xc
test eax, eax
je 0x111206c9
mov ecx, 0x100
mov esi, 0x11273728
mov edi, 0x1127e8f0
rep movsd dword es:[edi], dword [esi]
call fcn.1111be90
cmp dword [ebp - 0x170c], 8
jne 0x111206ef
mov eax, dword [ebp - 0x17e4]
mov ecx, 0x100
lea esi, [ebp - 0x16a4]
lea edi, [ebp - 0x61c]
rep movsd dword es:[edi], dword [esi]
xor edx, edx
jmp 0x111206f9
mov eax, 0x1127e8f0
mov edx, 0x100
cmp edx, ebx
jle 0x11120743
lea esi, [ebp - 0x61b]
lea edi, [ebp - 0x61a]
lea ecx, [ebp - 0x619]
sub esi, eax
sub edi, eax
sub ecx, eax
mov dword [ebp - 0x1764], edx
jmp 0x11120720
movzx edx, byte [eax + 2]
mov byte [esi + eax - 1], dl
movzx edx, byte [eax + 1]
mov byte [esi + eax], dl
movzx edx, byte [eax]
mov byte [edi + eax], dl
mov byte [ecx + eax], bl
add eax, 4
dec dword [ebp - 0x1764]
jne 0x11120720
mov esi, dword [ebp - 0x1790]
mov eax, esi
imul eax, dword [ebp - 0x1798]
push eax
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
mov dword [ebp - 0x179c], eax
mov dword [ebp - 0x17d4], ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push esi
push 1
mov dword [ebp - 0x17d8], ebx
mov dword [ebp - 0x1794], ebx
mov dword [ebp - 0x1788], ebx
call dword [sym.imp.MSVCR100.dll_calloc]
mov ecx, dword [ebp - 0x1730]
add esp, 8
push ebx
push 2
push str.ScrapeLayers
mov dword [ebp - 0x17bc], ecx
mov ecx, dword [0x1127aa68]
push str.Client
mov dword [ebp - 0x1774], eax
mov dword [ebp - 0x1764], ebx
mov dword [ebp - 0x17d0], ebx
mov dword [ebp - 0x1724], ebx
mov dword [ebp - 0x171c], ebx
mov dword [ebp - 0x17a4], ebx
mov dword [ebp - 0x17c0], ebx
mov dword [ebp - 0x17cc], ebx
mov dword [ebp - 0x17e8], ebx
mov dword [ebp - 0x17e0], ebx
mov dword [ebp - 0x17f8], ebx
mov dword [ebp - 0x17f0], ebx
mov dword [ebp - 0x17b8], ebx
mov dword [ebp - 0x17dc], ebx
mov dword [ebp - 0x17ec], ebx
mov dword [ebp - 0x1768], ebx
call fcn.110bbc00
push str.psapi.dll
mov dword [ebp - 0x17f4], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x1830], eax
mov dword [ebp - 0x182c], ebx
mov dword [ebp - 0x1828], ebx
mov dword [ebp - 0x1824], ebx
mov dword [ebp - 0x1820], ebx
mov dword [ebp - 0x181c], ebx
mov dword [ebp - 0x1818], ebx
mov dword [ebp - 0x1814], ebx
mov dword [ebp - 0x1810], ebx
mov edx, dword [ebp - 0x16d0]
cmp byte [edx + 0x7a0], 0
mov dword [ebp - 4], ebx
mov dword [ebp - 0x1728], ebx
je 0x111208be
mov ecx, dword [0x1127aa68]
push ebx
push 1
push str.DynPalDiffs
push str.Client
call fcn.110bbc00
test eax, eax
je 0x111208be
push 0x10
call fcn.111709c0
add esp, 4
cmp eax, ebx
je 0x111208a3
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
jmp 0x111208a5
xor eax, eax
mov dword [ebp - 0x1728], eax
cmp eax, ebx
je 0x111208be
lea ecx, [esi*4]
push ecx
mov ecx, eax
call fcn.1111f1c0
mov dword [ebp - 0x1744], ebx
mov dword [ebp - 0x1740], ebx
mov dword [ebp - 0x173c], ebx
mov byte [ebp - 4], 1
jmp 0x111208e0
mov eax, dword [ebp - 0x17f4]
xor ebx, ebx
mov dword [ebp - 0x1704], ebx
mov dword [ebp - 0x1748], ebx
cmp eax, 2
jne 0x11120a53
mov edx, dword [ebp - 0x174c]
mov ecx, dword [ebp - 0x16d8]
push edx
lea eax, [ebp - 0x1704]
push eax
push 2
push 1
push ecx
call fcn.1111ea30
add esp, 0x14
cmp dword [ebp - 0x1704], ebx
je 0x11120930
mov dword [ebp - 0x1748], 0x40000000
call fcn.111a2f30
test eax, eax
jne 0x11120952
call fcn.111a2f40
test eax, eax
jne 0x11120952
push ebx
push ebx
push 5
call fcn.111bb9f0
add esp, 0xc
test eax, eax
jne 0x11120958
mov dword [ebp - 0x1748], ebx
mov byte [ebp - 0x16d9], bl
mov dword [ebp - 0x1770], ebx
mov dword [ebp - 0x1708], 1
mov dword [ebp - 0x17b0], ebx
call fcn.11107510
test eax, eax
je 0x11120a02
mov ecx, dword [0x1127b21c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [ebp - 0x17b0]
push eax
lea eax, [ebp - 0x50]
push eax
call edx
test eax, eax
je 0x11120a02
mov ebx, dword [sym.imp.MSVCR100.dll__wcsicmp]
lea eax, [ebp - 0x50]
push str.Winlogon
push eax
call ebx
neg eax
sbb esi, esi
lea ecx, [ebp - 0x50]
push str.Default
inc esi
push ecx
mov dword [ebp - 0x1770], esi
call ebx
add esp, 0x10
mov edi, eax
neg edi
sbb edi, edi
inc edi
mov dword [ebp - 0x1708], edi
je 0x111209e3
mov edx, dword [ebp - 0x17b0]
push edx
call dword [sym.imp.USER32.dll_SetThreadDesktop]
mov eax, dword [ebp - 0x17b0]
push eax
call dword [sym.imp.USER32.dll_CloseDesktop]
test esi, esi
jne 0x11120af4
test edi, edi
je 0x11120af4
xor ebx, ebx
mov edx, dword [ebp - 0x16d0]
mov ecx, dword [ebp - 0x17bc]
mov eax, dword [edx + 0x7b8]
push ebx
mov dword [ebp - 0x1730], ecx
mov ecx, dword [ebp - 0x174c]
push eax
push ecx
call fcn.111835a0
mov esi, eax
add esp, 0xc
cmp esi, ebx
je 0x11120a69
mov eax, dword [ebp - 0x1724]
cmp eax, ebx
je 0x11120a69
push eax
push esi
call dword [sym.imp.GDI32.dll_EqualRgn]
push esi
test eax, eax
je 0x11120a61
call dword [sym.imp.GDI32.dll_DeleteObject]
jmp 0x11120da1
cmp eax, 1
je 0x11120926
jmp 0x11120930
call fcn.11179f00
add esp, 4
cmp dword [ebp - 0x171c], ebx
je 0x11120a96
mov edx, dword [ebp - 0x16d8]
push ebx
push edx
call dword [sym.imp.GDI32.dll_SelectClipRgn]
mov eax, dword [ebp - 0x171c]
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
push eax
call edi
mov dword [ebp - 0x171c], ebx
jmp 0x11120a9c
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
cmp dword [ebp - 0x1724], ebx
je 0x11120ab3
mov ecx, dword [ebp - 0x1724]
push ecx
call edi
mov dword [ebp - 0x1724], ebx
mov edx, dword [ebp - 0x16d0]
cmp dword [edx + 0x7b8], ebx
je 0x11120ae4
mov dword [ebp - 0x1724], esi
cmp esi, ebx
je 0x11120da1
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.GDI32.dll_CreateRectRgn]
mov dword [ebp - 0x171c], eax
jmp 0x11120da1
cmp esi, ebx
je 0x11120da1
push esi
call edi
jmp 0x11120da1
call fcn.111a2f30
test eax, eax
je 0x11120b18
call fcn.111a6d60
test al, al
je 0x11120b18
push str.Wait_for_resume_View_n
call fcn.111bd7b0
add esp, 4
call fcn.111a6dc0
mov edi, dword [ebp - 0x16d0]
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0x7cc]
push ecx
call ebx
add esp, 8
test eax, eax
je 0x11120b53
push 1
mov ecx, edi
call fcn.1111e9a0
cmp dword [edi + 0x854], 0
je 0x11120beb
lea edx, [ebp - 0x50]
push edx
mov ecx, edi
call fcn.1111e700
cmp dword [edi + 0x854], 0
je 0x11120beb
mov ebx, dword [ebp - 0x175c]
mov eax, dword [ebp - 0x16d8]
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
push ebx
push eax
call esi
cmp eax, dword [ebp - 0x1784]
je 0x11120b95
push 0x808
push str.newscrape.cpp
push str.hhDib
call fcn.11067750
add esp, 0xc
mov ecx, dword [edi + 0x7c0]
push ecx
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov edx, dword [edi + 0x7c4]
push 0x1f4
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [ebp - 0x1784]
mov ecx, dword [ebp - 0x16d8]
push eax
push ecx
call esi
cmp eax, ebx
je 0x11120bdf
push 0x80c
push str.newscrape.cpp
push str.hhbmpOld
call fcn.11067750
add esp, 0xc
mov byte [ebp - 0x16d9], 1
jmp 0x11120d9f
test esi, esi
je 0x11120d9f
cmp dword [ebp - 0x1768], 0
je 0x11120d9f
cmp dword [ebp - 0x17ec], 0
jne 0x11120d9f
mov esi, dword [ebp - 0x17a4]
test esi, esi
jne 0x11120d24
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edx, dword [ebp - 0x1754]
mov esi, eax
mov eax, dword [ebp - 0x16ec]
push edx
push eax
push esi
mov dword [ebp - 0x17a4], esi
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
push eax
push esi
mov dword [ebp - 0x17c0], eax
call edi
lea ecx, [ebp - 0x1238]
push ecx
mov dword [ebp - 0x17cc], eax
mov dword [ebp - 0x1238], 0
mov dword [ebp - 0x1234], 0xffffff
mov dword [ebp - 0x1230], 0
call dword [sym.imp.GDI32.dll_CreateBrushIndirect]
mov dword [ebp - 0x17e8], eax
test eax, eax
je 0x11120c94
push eax
push esi
call edi
mov dword [ebp - 0x17e0], eax
push 0
push 1
push 0
call dword [sym.imp.GDI32.dll_CreatePen]
mov dword [ebp - 0x17f8], eax
test eax, eax
je 0x11120cb4
push eax
push esi
call edi
mov dword [ebp - 0x17f0], eax
push 0x5c
lea edx, [ebp - 0x12a4]
push 0
push edx
call sub.MSVCR100.dll_memset
push 0x183b
mov dword [ebp - 0x12a4], 0xfffffff5
mov dword [ebp - 0x1294], 0x190
mov byte [ebp - 0x128d], 1
call fcn.111bccb0
lea edx, [ebp - 0x1288]
add esp, 0x10
sub edx, eax
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x11120cf4
lea eax, [ebp - 0x12a4]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [ebp - 0x17b8], eax
test eax, eax
je 0x11120d24
push eax
push esi
call edi
mov dword [ebp - 0x17dc], eax
mov ecx, dword [ebp - 0x1754]
mov edx, dword [ebp - 0x16ec]
push 0x42
push 0
push 0
push esi
push ecx
push edx
push 0
push 0
push esi
mov dword [ebp - 0x1730], esi
call dword [sym.imp.GDI32.dll_BitBlt]
push 1
push 0
push 0
push str.Winlogon
mov dword [ebp - 0x1804], esi
mov dword [ebp - 0x1800], 1
call dword [sym.imp.USER32.dll_OpenDesktopW]
mov esi, eax
test esi, esi
je 0x11120d8d
lea eax, [ebp - 0x1804]
push eax
push 0x1111bdb0
push esi
call dword [sym.imp.USER32.dll_EnumDesktopWindows]
push esi
call dword [sym.imp.USER32.dll_CloseDesktop]
jmp 0x11120d9f
lea ecx, [ebp - 0x1804]
push ecx
push 0x1111bdb0
call dword [sym.imp.USER32.dll_EnumWindows]
xor ebx, ebx
mov edx, dword [ebp - 0x1794]
mov eax, dword [edx*4 + 0x11273cb0]
mov esi, dword [ebp - 0x171c]
mov dword [ebp - 0x172c], ebx
mov dword [ebp - 0x1750], 0xffffffff
mov dword [ebp - 0x1758], ebx
mov dword [ebp - 0x176c], ebx
mov dword [ebp - 0x1780], eax
cmp dword [ebp - 0x1724], ebx
je 0x11120e07
mov ecx, dword [ebp - 0x1724]
push 5
push ebx
push ecx
push esi
call dword [sym.imp.GDI32.dll_CombineRgn]
mov eax, dword [ebp - 0x174c]
mov edx, dword [eax + 4]
mov eax, dword [eax]
neg edx
push edx
neg eax
push eax
push esi
call dword [sym.imp.GDI32.dll_OffsetRgn]
mov dword [ebp - 0x177c], ebx
mov dword [ebp - 0x1778], ebx
mov dword [ebp - 0x17c8], ebx
mov dword [ebp - 0x17a8], ebx
mov dword [ebp - 0x178c], ebx
mov dword [ebp - 0x17b4], ebx
call dword [sym.imp.WINMM.dll_timeGetTime]
cmp byte [ebp - 0x16d9], 0
mov dword [ebp - 0x16f4], eax
mov dword [ebp - 0x17a0], eax
mov byte [ebp - 0x16d2], 0
jne 0x111211a8
cmp byte [ebp - 0x16d1], 0
je 0x111211af
test esi, esi
je 0x11120e94
mov eax, dword [ebp - 0x16c4]
mov ecx, dword [ebp - 0x1734]
cdq
xor eax, edx
sub eax, edx
imul eax, dword [ebp - 0x16f8]
push eax
push 0
push ecx
call sub.MSVCR100.dll_memset
mov edx, dword [ebp - 0x16d8]
add esp, 0xc
push esi
push edx
call dword [sym.imp.GDI32.dll_SelectClipRgn]
mov eax, dword [ebp - 0x16d0]
xor edx, edx
mov esi, 0x10000
xor edi, edi
mov ebx, esi
mov dword [ebp - 0x1834], edx
add eax, 0x7c
mov dword [ebp - 0x16e8], 8
cmp dword [eax - 0x20], 0
je 0x11120ee7
cmp dword [eax - 4], 0
je 0x11120ee7
mov ecx, dword [eax]
cmp ecx, esi
jge 0x11120ecc
mov esi, ecx
mov ecx, dword [eax + 4]
cmp ecx, ebx
jge 0x11120ed5
mov ebx, ecx
mov ecx, dword [eax + 8]
cmp ecx, edi
jle 0x11120ede
mov edi, ecx
mov ecx, dword [eax + 0xc]
cmp ecx, edx
jle 0x11120ee7
mov edx, ecx
cmp dword [eax + 0x18], 0
je 0x11120f17
cmp dword [eax + 0x34], 0
je 0x11120f17
mov ecx, dword [eax + 0x38]
cmp ecx, esi
jge 0x11120efc
mov esi, ecx
mov ecx, dword [eax + 0x3c]
cmp ecx, ebx
jge 0x11120f05
mov ebx, ecx
mov ecx, dword [eax + 0x40]
cmp ecx, edi
jle 0x11120f0e
mov edi, ecx
mov ecx, dword [eax + 0x44]
cmp ecx, edx
jle 0x11120f17
mov edx, ecx
cmp dword [eax + 0x50], 0
je 0x11120f47
cmp dword [eax + 0x6c], 0
je 0x11120f47
mov ecx, dword [eax + 0x70]
cmp ecx, esi
jge 0x11120f2c
mov esi, ecx
mov ecx, dword [eax + 0x74]
cmp ecx, ebx
jge 0x11120f35
mov ebx, ecx
mov ecx, dword [eax + 0x78]
cmp ecx, edi
jle 0x11120f3e
mov edi, ecx
mov ecx, dword [eax + 0x7c]
cmp ecx, edx
jle 0x11120f47
mov edx, ecx
cmp dword [eax + 0x88], 0
je 0x11120f89
cmp dword [eax + 0xa4], 0
je 0x11120f89
mov ecx, dword [eax + 0xa8]
cmp ecx, esi
jge 0x11120f65
mov esi, ecx
mov ecx, dword [eax + 0xac]
cmp ecx, ebx
jge 0x11120f71
mov ebx, ecx
mov ecx, dword [eax + 0xb0]
cmp ecx, edi
jle 0x11120f7d
mov edi, ecx
mov ecx, dword [eax + 0xb4]
cmp ecx, edx
jle 0x11120f89
mov edx, ecx
add eax, 0xe0
dec dword [ebp - 0x16e8]
jne 0x11120eb8
mov dword [ebp - 0x1834], edx
cmp edi, esi
jge 0x11120fba
mov eax, dword [ebp - 0x1754]
mov edi, dword [ebp - 0x16ec]
xor esi, esi
xor ebx, ebx
mov dword [ebp - 0x1834], eax
cmp dword [ebp + 0x24], 0
je 0x11120fda
call fcn.111a2f30
mov ecx, dword [ebp - 0x1708]
push eax
push ecx
push str.bDefaultDesktop_d__blank_d_n
call fcn.111bd7b0
add esp, 0xc
cmp dword [ebp - 0x1708], 0
je 0x11121007
call fcn.111a2f30
test eax, eax
je 0x11121007
call fcn.111a6d60
test al, al
je 0x11121007
push str.Wait_for_resume_View_n
call fcn.111bd7b0
add esp, 4
call fcn.111a6dc0
mov eax, dword [ebp - 0x174c]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x1748]
or edx, 0xcc0020
push edx
mov edx, dword [eax]
mov eax, dword [ebp - 0x1730]
add ecx, ebx
push ecx
mov ecx, dword [ebp - 0x16d8]
add edx, esi
push edx
push eax
mov eax, dword [ebp - 0x1834]
sub eax, ebx
push eax
sub edi, esi
push edi
push ebx
push esi
push ecx
call dword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
je 0x111210c4
mov byte [ebp - 0x16d2], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
mov edx, dword [ebp - 0x16d0]
mov esi, eax
sub eax, dword [ebp - 0x17a0]
cmp dword [edx + 0x50], 0
mov dword [ebp - 0x16f4], esi
mov dword [ebp - 0x177c], eax
je 0x111211af
test dword [ebp - 0x1748], 0x40000000
jne 0x111210b1
cmp dword [ebp - 0x1704], 0
jne 0x1112109a
cmp dword [ebp - 0x17f4], 0
jne 0x111210b1
mov eax, dword [ebp - 0x16d8]
push 0
push 0
push 0
push 1
push eax
call fcn.1111ea30
add esp, 0x14
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, esi
mov dword [ebp - 0x17b4], eax
jmp 0x111211af
mov esi, dword [ebp - 0x16d0]
cmp dword [esi + 0x854], 0
je 0x111211af
cmp byte [esi + 0x84c], 0
jne 0x111210fb
mov byte [esi + 0x84c], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.BitBlt_Default__failed__e_d__trying_scrapeApp_n
call fcn.111bd7b0
add esp, 8
lea ecx, [esi + 0x7cc]
push str.Default
push ecx
call dword [sym.imp.MSVCR100.dll__wcsicmp]
add esp, 8
test eax, eax
je 0x11121129
push 1
mov ecx, esi
call fcn.1111e9a0
push str.Default
mov ecx, esi
call fcn.1111e700
mov ebx, dword [ebp - 0x175c]
mov edx, dword [ebp - 0x16d8]
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
push ebx
push edx
call edi
cmp eax, dword [ebp - 0x1784]
je 0x1112115e
push 0x94a
push str.newscrape.cpp
push str.hhDib
call fcn.11067750
add esp, 0xc
mov eax, dword [esi + 0x7c0]
push eax
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, dword [esi + 0x7c4]
push 0x3e8
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edx, dword [ebp - 0x1784]
mov eax, dword [ebp - 0x16d8]
push edx
push eax
call edi
cmp eax, ebx
je 0x111211a8
push 0x94e
push str.newscrape.cpp
push str.hhbmpOld
call fcn.11067750
add esp, 0xc
mov byte [ebp - 0x16d2], 1
mov ecx, dword [ebp - 0x16d0]
cmp byte [ecx + 0x7a0], 0
je 0x1112129e
cmp dword [ebp + 0x24], 0
jne 0x111211d2
cmp dword [ebp + 0x20], 0
je 0x1112129e
mov edx, dword [0x11273b70]
mov ecx, dword [ebp + 0x24]
push 0
push edx
mov edx, dword [ebp - 0x16f8]
lea eax, [ebp - 0x121c]
push eax
mov eax, dword [ebp - 0x1754]
push ecx
mov ecx, dword [ebp - 0x16ec]
push 2
push edx
mov edx, dword [ebp - 0x1734]
push eax
push ecx
push edx
call fcn.110ef500
mov edi, eax
add esp, 0x24
xor esi, esi
test edi, edi
jle 0x1112129e
jmp 0x11121220
mov dl, byte [ebp + esi*4 - 0x121a]
mov cl, byte [ebp + esi*4 - 0x121c]
mov al, byte [ebp + esi*4 - 0x121b]
xor ebx, ebx
cmp byte [ebp + esi*4 - 0x61c], dl
setne bl
xor edx, edx
cmp byte [ebp + esi*4 - 0x61a], cl
mov byte [ebp + esi*4 - 0x61a], cl
setne dl
movzx ecx, cl
or ebx, edx
xor edx, edx
cmp byte [ebp + esi*4 - 0x61b], al
mov byte [ebp + esi*4 - 0x61b], al
setne dl
movzx eax, al
inc esi
or ebx, edx
mov dl, byte [ebp + esi*4 - 0x121e]
or dword [ebp - 0x1718], ebx
mov byte [ebp + esi*4 - 0x620], dl
movzx edx, dl
shl edx, 8
or edx, eax
shl edx, 8
or edx, ecx
mov dword [esi*4 + 0x1127e8ec], edx
cmp esi, edi
jl 0x11121220
mov edx, dword [ebp - 0x16d0]
xor esi, esi
mov byte [edx + 0x7a2], 0
mov edx, dword [ebp - 0x1790]
mov dword [ebp - 0x1708], esi
mov dword [ebp - 0x16e0], esi
mov dword [ebp - 0x1700], esi
cmp edx, esi
jle 0x11121c5a
mov edi, dword [ebp - 0x1720]
mov eax, dword [ebp - 0x16d0]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
jne 0x11121c52
mov edx, eax
cmp byte [edx + 0x28], cl
jne 0x11121c52
mov bl, byte [ebp - 0x16d2]
test bl, bl
je 0x1112130c
mov eax, dword [ebp - 0x16e0]
imul eax, dword [ebp - 0x16f8]
mov dword [ebp - 0x1708], eax
cmp dword [ebp - 0x171c], 0
je 0x11121377
mov eax, edx
cmp dword [eax + 0x50], 0
je 0x11121323
call dword [sym.imp.GDI32.dll_GdiFlush]
test bl, bl
jne 0x11121377
mov esi, dword [ebp - 0x16e4]
mov edx, dword [ebp - 0x1734]
mov ecx, esi
imul ecx, dword [ebp - 0x16f8]
push ecx
push 0
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [ebp - 0x1700], 0
je 0x11121363
mov eax, dword [ebp - 0x171c]
neg esi
push esi
push 0
push eax
call dword [sym.imp.GDI32.dll_OffsetRgn]
mov ecx, dword [ebp - 0x171c]
mov edx, dword [ebp - 0x16d8]
push ecx
push edx
call dword [sym.imp.GDI32.dll_SelectClipRgn]
mov eax, dword [ebp - 0x1774]
mov ecx, dword [ebp - 0x1700]
mov al, byte [ecx + eax]
mov byte [ebp - 0x16d9], al
test al, 7
je 0x111213a3
cmp dword [ebp - 0x172c], 0
jne 0x111213a3
mov dword [ebp - 0x172c], 1
cmp dword [ebp + 0x24], 0
jne 0x111213bc
cmp dword [ebp + 0x20], 0
jne 0x111213bc
cmp dword [ebp - 0x172c], 0
je 0x1112166a
test bl, bl
jne 0x1112148d
xor esi, esi
cmp dword [ebp + 0x24], esi
jne 0x111213d3
cmp dword [0x1127ecf0], esi
je 0x111213db
call dword [sym.imp.WINMM.dll_timeGetTime]
mov esi, eax
mov eax, dword [ebp - 0x174c]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x1748]
add ecx, dword [ebp - 0x16e0]
or edx, 0xcc0020
push edx
mov edx, dword [eax]
mov eax, dword [ebp - 0x1730]
push ecx
mov ecx, dword [ebp - 0x16e4]
push edx
mov edx, dword [ebp - 0x16ec]
push eax
mov eax, dword [ebp - 0x16d8]
push ecx
push edx
push 0
push 0
push eax
call dword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
jne 0x11121443
cmp byte [0x1127ed49], al
jne 0x11121443
mov byte [0x1127ed49], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 6
je 0x11121c52
cmp dword [ebp + 0x24], 0
jne 0x11121452
cmp dword [0x1127ecf0], 0
je 0x11121466
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [ebp - 0x16f4], eax
sub eax, esi
add dword [ebp - 0x177c], eax
mov ecx, dword [ebp - 0x16d0]
mov edx, dword [ecx + 0x1c]
test edx, edx
jne 0x11121c52
mov eax, ecx
cmp byte [eax + 0x28], dl
jne 0x11121c52
cmp dword [ecx + 0x50], edx
je 0x1112148d
call dword [sym.imp.GDI32.dll_GdiFlush]
cmp dword [ebp + 0x24], 0
je 0x11121521
cmp dword [ebp - 0x1700], 0
jne 0x11121521
cmp dword [0x1127ecf0], 0
je 0x11121536
mov esi, dword [ebp - 0x1734]
add esi, 0xe
mov ebx, 8
nop
movzx edx, byte [esi + 1]
movzx ecx, byte [esi]
movzx eax, byte [esi - 5]
push edx
movzx edx, byte [esi - 1]
push ecx
movzx ecx, byte [esi - 2]
push edx
movzx edx, byte [esi - 3]
push ecx
movzx ecx, byte [esi - 4]
push edx
movzx edx, byte [esi - 7]
push ecx
movzx ecx, byte [esi - 9]
push eax
push eax
movzx eax, byte [esi - 8]
push edx
movzx edx, byte [esi - 0xa]
push eax
movzx eax, byte [esi - 0xb]
push ecx
movzx ecx, byte [esi - 0xc]
push edx
movzx edx, byte [esi - 0xd]
push eax
movzx eax, byte [esi - 0xe]
push ecx
push edx
push eax
push str._02x__02x__02x__02x___02x__02x__02x__02x___02x__02x__02x__02x___02x__02x__02x__02x_n
call fcn.111bd7b0
add esi, dword [ebp - 0x16f8]
add esp, 0x44
dec ebx
jne 0x111214c0
cmp dword [0x1127ecf0], 0
je 0x11121536
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [ebp - 0x16f4], eax
mov ecx, dword [ebp - 0x16e0]
mov edx, dword [ebp - 0x17ac]
push ecx
mov ecx, dword [ebp - 0x16f8]
push edx
mov edx, dword [ebp + 0x14]
lea eax, [ebp - 0xa1c]
push eax
mov eax, dword [ebp - 0x170c]
push edi
push ecx
mov ecx, dword [ebp - 0x16e4]
push edx
mov edx, dword [ebp - 0x16ec]
push eax
mov eax, dword [ebp - 0x16f0]
push ecx
mov ecx, dword [ebp - 0x16d0]
push edx
mov edx, dword [ebp - 0x1708]
add edx, dword [ebp - 0x1734]
push eax
push edx
call fcn.1111d710
cmp dword [0x1127ecf0], 0
je 0x111215a6
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, dword [ebp - 0x16f4]
add dword [ebp - 0x1778], eax
cmp dword [ebp - 0x1770], 0
je 0x1112160b
cmp dword [ebp - 0x1768], 0
jne 0x1112160b
mov eax, dword [ebp - 0x16e4]
add eax, dword [ebp - 0x16e0]
cmp eax, dword [ebp - 0x1754]
jge 0x1112160b
mov eax, dword [ebp - 0x16e4]
dec eax
test eax, eax
jle 0x1112160b
mov esi, dword [ebp - 0x16f0]
mov ebx, eax
nop
mov edx, dword [ebp - 0x16f0]
push edi
push esi
push edx
call sub.MSVCR100.dll_memcmp
add esp, 0xc
test eax, eax
je 0x11121606
mov eax, 1
mov dword [ebp - 0x1768], eax
mov dword [ebp - 0x17ec], eax
add esi, edi
dec ebx
jne 0x111215e0
cmp dword [ebp - 0x1718], 0
je 0x1112163c
lea eax, [ebp - 0x1744]
push eax
push 0x100
lea ecx, [ebp - 0x61c]
push ecx
mov ecx, dword [ebp - 0x16d0]
mov dword [ebp - 0x1718], 0
call fcn.1111f310
mov edx, dword [ebp - 0x16d0]
mov eax, dword [edx + 0x1c]
test eax, eax
jne 0x11121c52
mov ecx, edx
cmp byte [ecx + 0x28], al
jne 0x11121c52
cmp dword [ebp + 0x24], eax
jne 0x11121a22
cmp dword [ebp + 0x20], eax
jne 0x11121a22
mov edx, dword [ebp - 0x16d0]
mov eax, dword [edx + 0x1c]
test eax, eax
jne 0x11121c52
mov ecx, edx
cmp byte [ecx + 0x28], al
jne 0x11121c52
inc dword [ebp - 0x17d4]
mov ebx, dword [ebp - 0x16e4]
mov esi, dword [ebp - 0x16e0]
cmp dword [ebp - 0x172c], eax
jne 0x11121967
cmp byte [ebp - 0x16d2], al
jne 0x1112173d
mov edx, dword [ebp - 0x1748]
mov ecx, dword [ebp - 0x174c]
mov eax, dword [ebp - 0x1780]
or edx, 0xcc0020
push edx
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
add edx, esi
add edx, eax
push edx
mov edx, dword [ebp - 0x1730]
push ecx
mov ecx, dword [ebp - 0x16ec]
push edx
mov edx, dword [ebp - 0x16d8]
push 1
push ecx
push eax
push 0
push edx
call dword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
jne 0x11121716
cmp byte [0x1127ed48], al
jne 0x11121716
mov byte [0x1127ed48], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 6
je 0x11121c52
mov eax, dword [ebp - 0x16d0]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
jne 0x11121c52
mov edx, eax
cmp byte [edx + 0x28], cl
jne 0x11121c52
cmp dword [eax + 0x50], ecx
je 0x1112173d
call dword [sym.imp.GDI32.dll_GdiFlush]
mov ecx, dword [ebp - 0x16d0]
cmp byte [ecx + 0x7a0], 0
je 0x1112176a
mov ecx, dword [ebp - 0x1780]
imul ecx, dword [ebp - 0x16f8]
add ecx, dword [ebp - 0x1708]
add ecx, dword [ebp - 0x1734]
jmp 0x1112180a
cmp dword [0x1127ecf0], 0
je 0x1112177f
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [ebp - 0x16f4], eax
mov eax, dword [ebp - 0x1780]
mov ecx, dword [ebp - 0x1720]
mov edi, dword [ebp - 0x16f0]
mov edx, eax
imul edx, ecx
add edi, edx
mov edx, dword [ebp - 0x16e0]
add edx, eax
push edx
mov edx, dword [ebp - 0x17ac]
push edx
lea edx, [ebp - 0xa1c]
push edx
mov edx, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp - 0x16f8]
push ecx
imul eax, ecx
add eax, dword [ebp - 0x1708]
mov ecx, dword [ebp - 0x16d0]
add eax, dword [ebp - 0x1734]
push edx
mov edx, dword [ebp - 0x170c]
push edx
mov edx, dword [ebp - 0x16ec]
push 1
push edx
push edi
push eax
call fcn.1111d710
cmp dword [0x1127ecf0], 0
je 0x11121802
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, dword [ebp - 0x16f4]
add dword [ebp - 0x1778], eax
mov ecx, edi
mov edi, dword [ebp - 0x1720]
mov eax, dword [ebp - 0x16e0]
add eax, dword [ebp - 0x1780]
push edi
imul eax, edi
add eax, dword [ebp - 0x179c]
push eax
push ecx
call sub.MSVCR100.dll_memcmp
add esp, 0xc
test eax, eax
je 0x11121c2e
cmp byte [ebp - 0x16d2], 0
je 0x1112187a
mov eax, dword [ebp - 0x1700]
dec eax
cmp eax, dword [ebp - 0x1750]
jle 0x1112186b
mov dword [ebp - 0x1700], eax
mov eax, dword [ebp - 0x16e4]
sub dword [ebp - 0x16e0], eax
mov dword [ebp - 0x172c], 2
jmp 0x11121c40
mov dword [ebp - 0x172c], 1
jmp 0x11121c40
mov eax, dword [ebp - 0x16e0]
test eax, eax
je 0x111218a5
cmp dword [ebp - 0x1724], 0
jne 0x111218a5
mov ebx, dword [ebp - 0x16e4]
mov edx, dword [ebp - 0x1780]
mov ecx, eax
sub ecx, ebx
lea esi, [ecx + edx + 1]
sub ebx, esi
add ebx, eax
mov eax, dword [ebp - 0x1748]
or eax, 0xcc0020
push eax
mov eax, dword [ebp - 0x174c]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov eax, dword [ebp - 0x1730]
add ecx, esi
push ecx
mov ecx, dword [ebp - 0x16ec]
push edx
mov edx, dword [ebp - 0x16d8]
push eax
push ebx
push ecx
push 0
push 0
push edx
mov dword [ebp - 0x172c], 1
call dword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
jne 0x111218fd
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 6
je 0x11121c52
mov eax, dword [ebp - 0x16d0]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
jne 0x11121c52
mov edx, eax
cmp byte [edx + 0x28], cl
jne 0x11121c52
cmp dword [eax + 0x50], ecx
je 0x11121924
call dword [sym.imp.GDI32.dll_GdiFlush]
mov ecx, dword [ebp - 0x17ac]
mov eax, dword [ebp - 0x16f8]
push esi
push ecx
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0xa1c]
push edx
mov edx, dword [ebp - 0x170c]
push edi
push eax
mov eax, dword [ebp - 0x16ec]
push ecx
mov ecx, dword [ebp - 0x16f0]
push edx
mov edx, dword [ebp - 0x1734]
push ebx
push eax
push ecx
mov ecx, dword [ebp - 0x16d0]
push edx
call fcn.1111d710
lea eax, [ebp - 0x1744]
push eax
lea ecx, [ebp - 0x178c]
push ecx
lea edx, [ebp - 0x17a8]
push edx
mov edx, dword [ebp - 0x1728]
lea eax, [ebp - 0x17c8]
push eax
mov eax, dword [ebp - 0x1724]
lea ecx, [ebp - 0x1758]
push ecx
mov ecx, dword [ebp - 0x1714]
push edx
mov edx, dword [ebp - 0x16fc]
push eax
mov eax, dword [ebp - 0x170c]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp - 0x16f0]
push edi
push edi
push esi
imul esi, edi
add esi, dword [ebp - 0x179c]
push 0
push eax
push ecx
mov ecx, dword [ebp - 0x16d0]
push ebx
push edx
push esi
call fcn.1111f8e0
test eax, eax
jne 0x111219ee
mov eax, dword [ebp - 0x1700]
dec dword [ebp - 0x172c]
mov dword [ebp - 0x1750], eax
jmp 0x11121c2e
add dword [ebp - 0x176c], eax
mov al, byte [ebp - 0x16d9]
mov ecx, dword [ebp - 0x1700]
mov edx, dword [ebp - 0x1774]
or al, 1
mov byte [ecx + edx], al
mov eax, ecx
mov dword [ebp - 0x172c], 1
mov dword [ebp - 0x1750], eax
jmp 0x11121c2e
mov edi, dword [ebp - 0x16e0]
mov ebx, dword [ebp - 0x1798]
mov edx, dword [ebp - 0x16f0]
mov eax, edi
imul eax, dword [ebp - 0x1720]
add eax, dword [ebp - 0x179c]
push ebx
push edx
push eax
call sub.MSVCR100.dll_memcpy
mov esi, dword [ebp - 0x16fc]
movzx ecx, word [ebp - 0x16ec]
mov edx, dword [ebp - 0x16e4]
mov eax, dword [ebp - 0x16d0]
neg edx
mov word [esi + 8], dx
mov word [esi + 6], cx
movzx ecx, word [eax + 0x7b0]
mov word [esi + 2], cx
mov dx, word [eax + 0x7b4]
mov eax, dword [ebp - 0x1714]
add dx, di
mov word [esi + 4], dx
push eax
add esi, 0xb
call dword [sym.imp.MSVCR100.dll_malloc]
mov edi, eax
mov eax, dword [ebp + 0x14]
add esp, 0x10
mov dword [ebp - 0x16e8], edi
mov dword [ebp - 0x1704], 0
cmp eax, 0x10
jle 0x11121b55
lea eax, [ebx + ebx*2]
cdq
and edx, 3
lea esi, [edx + eax]
sar esi, 2
push esi
call dword [sym.imp.MSVCR100.dll_malloc]
mov ecx, eax
mov eax, ebx
cdq
and edx, 3
add eax, edx
sar eax, 2
add esp, 4
mov dword [ebp - 0x1704], ecx
test eax, eax
jle 0x11121b21
lea edx, [ecx + 2]
mov ecx, dword [ebp - 0x16f0]
add ecx, 2
mov dword [ebp - 0x16e8], eax
jmp 0x11121b00
movzx eax, byte [ecx - 2]
mov byte [edx - 2], al
movzx eax, byte [ecx - 1]
mov byte [edx - 1], al
movzx eax, byte [ecx]
mov byte [edx], al
add ecx, 4
add edx, 3
dec dword [ebp - 0x16e8]
jne 0x11121b00
mov ecx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x16fc]
mov edx, dword [ebp - 0x1704]
push 0
push ecx
add eax, 0xb
push eax
push esi
push edx
call fcn.11144600
mov esi, eax
mov eax, dword [ebp - 0x1704]
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 0x18
jmp 0x11121bc2
cmp eax, 8
jle 0x11121f70
mov ecx, dword [ebp - 0x1714]
mov edx, dword [ebp - 0x16f0]
push 0
push ecx
push esi
push ebx
push edx
call fcn.111447e0
add esp, 0x14
mov esi, eax
test edi, edi
je 0x11121bc2
mov eax, dword [ebp - 0x1714]
mov ecx, dword [ebp - 0x16f0]
push 0
push eax
push edi
push ebx
push ecx
call fcn.11144950
add esp, 0x14
mov dword [ebp - 0x1704], eax
mov eax, dword [ebp - 0x1704]
test eax, eax
je 0x11121bc2
cmp eax, esi
jge 0x11121bc2
mov esi, eax
mov eax, dword [ebp - 0x16fc]
push esi
add eax, 0xb
push edi
push eax
call sub.MSVCR100.dll_memcpy
add esp, 0xc
push edi
call dword [sym.imp.MSVCR100.dll_free]
mov ecx, dword [ebp - 0x16d0]
mov edx, dword [ecx + 0x1c]
add dword [ebp - 0x1758], esi
add dword [ebp - 0x176c], ebx
add esp, 4
test edx, edx
jne 0x11121c52
mov eax, ecx
cmp byte [eax + 0x28], dl
jne 0x11121c52
mov edi, eax
cmp dword [ebp - 0x1700], edx
jne 0x11121c0d
lea ecx, [ebp - 0x1744]
push ecx
push 1
mov ecx, edi
call fcn.1111f570
mov byte [edi + 0x7a2], 1
mov eax, dword [ebp - 0x16fc]
lea edx, [ebp - 0x1744]
push edx
push 0
add esi, 0xc
push esi
push eax
mov ecx, edi
call fcn.1111f2d0
mov edi, dword [ebp - 0x1720]
mov ecx, dword [ebp - 0x16e4]
inc dword [ebp - 0x1700]
add dword [ebp - 0x16e0], ecx
mov edx, dword [ebp - 0x1700]
cmp edx, dword [ebp - 0x1790]
jl 0x111212d3
mov edx, dword [ebp - 0x1790]
xor esi, esi
mov ecx, dword [ebp - 0x1774]
xor eax, eax
cmp edx, esi
jle 0x11121c6e
shl byte [eax + ecx], 1
inc eax
cmp eax, edx
jl 0x11121c66
cmp dword [ebp - 0x1728], esi
je 0x111224c3
mov eax, dword [ebp - 0x1728]
mov esi, dword [eax + 4]
mov ebx, dword [eax]
mov ecx, esi
sub ecx, ebx
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x111224c3
mov ecx, dword [ebp - 0x16d0]
cmp byte [ecx + 0x7a0], 0
je 0x11121e6f
mov eax, ebx
cmp eax, esi
je 0x11121cc9
mov edx, dword [ebp - 0x1728]
mov ecx, dword [edx + 4]
add eax, 0x18
cmp eax, ecx
jne 0x11121cc2
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
movzx esi, ax
mov eax, dword [ebp - 0x1728]
mov ecx, dword [eax]
shr esi, 0xf
and esi, 1
je 0x11121d05
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
push edx
push eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ecx + 8]
cdq
xor eax, edx
sub eax, edx
push eax
push ecx
push str.w_d_h_d___x_d_y_d_n
call fcn.111bd7b0
add esp, 0x14
mov eax, dword [ebp - 0x16d0]
mov ecx, dword [eax + 0x798]
push 0
push 0
lea edx, [ebp - 0xe1c]
push edx
push esi
push ecx
call fcn.110ee6b0
mov edi, eax
add esp, 0x14
xor esi, esi
mov dword [ebp - 0x1718], 0
test edi, edi
jle 0x11121dbe
lea esp, [esp]
mov al, byte [ebp + esi*4 - 0xe1b]
mov cl, byte [ebp + esi*4 - 0xe1c]
xor edx, edx
cmp byte [ebp + esi*4 - 0x61b], al
mov byte [ebp + esi*4 - 0x61b], al
setne dl
xor ebx, ebx
cmp byte [ebp + esi*4 - 0x61a], cl
mov cl, byte [ebp + esi*4 - 0xe1a]
setne bl
movzx eax, al
or edx, ebx
xor ebx, ebx
cmp byte [ebp + esi*4 - 0x61c], cl
mov byte [ebp + esi*4 - 0x61c], cl
setne bl
movzx ecx, cl
shl ecx, 8
or ecx, eax
shl ecx, 8
or edx, ebx
or dword [ebp - 0x1718], edx
mov dl, byte [ebp + esi*4 - 0xe1c]
mov byte [ebp + esi*4 - 0x61a], dl
movzx edx, dl
or ecx, edx
mov dword [esi*4 + 0x1127e8f0], ecx
inc esi
cmp esi, edi
jl 0x11121d40
cmp edi, 0x100
jge 0x11121de4
mov eax, 0x100
sub eax, edi
add eax, eax
add eax, eax
push eax
lea ecx, [ebp + edi*4 - 0x61c]
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [ebp - 0x1718], 0
je 0x11121e11
mov ecx, dword [ebp - 0x16d0]
lea edx, [ebp - 0x1744]
push edx
push edi
lea eax, [ebp - 0x61c]
push eax
mov dword [ebp - 0x1718], 0
call fcn.1111f310
cmp dword [0x1127ecf0], 0
je 0x11121e26
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [ebp - 0x17fc], eax
mov ecx, dword [0x11273b70]
mov eax, dword [ebp - 0x16d0]
push ecx
mov ecx, dword [eax + 0x798]
push 1
lea edx, [ebp - 0xe1c]
push edx
push edi
push ecx
call fcn.110ee470
add esp, 0x14
cmp dword [0x1127ecf0], 0
je 0x11121e6f
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, dword [ebp - 0x17fc]
push eax
push str.BuildLUT_p12to8___took__d_ms_n
call fcn.111bd7b0
add esp, 8
mov esi, dword [ebp - 0x16d0]
lea edx, [ebp - 0x1744]
push edx
push 1
mov ecx, esi
call fcn.1111f570
mov eax, dword [ebp - 0x1798]
xor ebx, ebx
push eax
mov byte [esi + 0x7a2], 1
mov dword [ebp - 0x1770], ebx
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
mov dword [ebp - 0x16f4], eax
cmp eax, ebx
je 0x11122276
mov eax, dword [ebp - 0x1728]
mov edi, dword [eax]
cmp edi, dword [eax + 4]
je 0x1112225e
jmp 0x11121ed0
movzx ecx, word [edi + 0xc]
mov eax, dword [ebp - 0x16fc]
mov word [eax + 8], cx
mov dx, word [edi + 8]
mov word [eax + 6], dx
movzx ecx, word [edi]
mov edx, dword [ebp - 0x16d0]
mov word [eax + 2], cx
movzx ecx, word [edi + 4]
mov word [eax + 4], cx
cmp byte [edx + 0x7a0], 0
mov dword [ebp - 0x1750], ecx
je 0x11122150
movzx ebx, word [eax + 6]
movsx eax, word [eax + 8]
mov ecx, dword [edi + 0x10]
cdq
mov esi, eax
mov eax, dword [ebp - 0x16d0]
mov eax, dword [eax + 0x79c]
xor esi, edx
sub esi, edx
cmp eax, 0x64
jl 0x111220eb
mov edx, dword [ebp - 0x16fc]
movzx eax, word [edx + 2]
movzx edx, word [ebp - 0x1750]
push eax
mov eax, dword [ebp - 0x1720]
push edx
mov edx, dword [ebp - 0x16f4]
push ebx
push eax
push esi
push ebx
push edx
push ecx
call fcn.1111c200
add esp, 0x20
imul esi, ebx
mov dword [ebp - 0x1770], esi
jmp 0x1112219e
mov edx, dword [ebp - 0x16d0]
cmp byte [edx + 0x7a0], 0
je 0x11122087
mov ebx, dword [ebp - 0x16e4]
mov esi, dword [ebp - 0x16ec]
imul ebx, esi
lea eax, [ebx + 0x100]
push eax
call dword [sym.imp.MSVCR100.dll_malloc]
mov ecx, dword [ebp - 0x16d0]
mov edi, eax
mov eax, dword [ecx + 0x79c]
add esp, 4
cmp eax, 0x64
jl 0x11121fe0
mov edx, dword [ebp - 0x16e0]
mov eax, dword [ebp - 0x16f8]
mov ecx, dword [ebp - 0x16e4]
push 0
push edx
mov edx, dword [ebp - 0x16f0]
push esi
push eax
push ecx
push esi
push edi
push edx
call fcn.1111c200
add esp, 0x20
jmp 0x11122024
mov ecx, dword [ebp - 0x16f8]
mov edx, dword [ebp - 0x16e4]
cmp eax, 0x4b
jl 0x11122010
mov eax, dword [ebp - 0x16e0]
push 0
push eax
mov eax, dword [ebp - 0x16f0]
push esi
push ecx
push edx
push esi
push edi
push eax
call fcn.1111c3d0
add esp, 0x20
jmp 0x11122024
mov eax, dword [ebp - 0x16f0]
push esi
push ecx
push edx
push esi
push edi
push eax
call fcn.1111c610
add esp, 0x18
mov ecx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x16fc]
push 0
push ecx
add eax, 0xb
push eax
push ebx
push edi
call fcn.11144950
add esp, 0x14
cmp dword [ebp - 0x16e8], 0
mov esi, eax
je 0x1112206c
mov edx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x16e8]
push 0
push edx
push eax
push ebx
push edi
call fcn.11144ac0
add esp, 0x14
mov dword [ebp - 0x1704], eax
push edi
call dword [sym.imp.MSVCR100.dll_free]
mov edi, dword [ebp - 0x16e8]
mov ebx, dword [ebp - 0x1798]
add esp, 4
jmp 0x11121b9e
push 0
cmp eax, 8
jne 0x111220cc
mov ecx, dword [ebp - 0x1714]
mov edx, dword [ebp - 0x16f0]
push ecx
push esi
push ebx
push edx
call fcn.11144950
add esp, 0x14
mov esi, eax
test edi, edi
je 0x11121bc2
mov eax, dword [ebp - 0x1714]
mov ecx, dword [ebp - 0x16f0]
push 0
push eax
push edi
push ebx
push ecx
call fcn.11144ac0
jmp 0x11121b95
mov edx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x16f0]
push edx
push esi
push ebx
push eax
call fcn.11144ac0
add esp, 0x14
mov esi, eax
jmp 0x11121bc2
cmp eax, 0x4b
jl 0x1112212b
mov eax, dword [ebp - 0x16fc]
movzx edx, word [eax + 2]
movzx eax, word [ebp - 0x1750]
push edx
mov edx, dword [ebp - 0x1720]
push eax
mov eax, dword [ebp - 0x16f4]
push ebx
push edx
push esi
push ebx
push eax
push ecx
call fcn.1111c3d0
add esp, 0x20
imul esi, ebx
mov dword [ebp - 0x1770], esi
jmp 0x1112219e
mov edx, dword [ebp - 0x1720]
mov eax, dword [ebp - 0x16f4]
push ebx
push edx
push esi
push ebx
push eax
push ecx
call fcn.1111c610
add esp, 0x18
imul esi, ebx
mov dword [ebp - 0x1770], esi
jmp 0x1112219e
mov eax, dword [edi + 0xc]
mov esi, dword [ebp - 0x16f4]
mov ebx, dword [edi + 0x10]
cdq
xor eax, edx
sub eax, edx
mov dword [ebp - 0x16e8], 0
test eax, eax
jle 0x1112219e
mov ecx, dword [edi + 0x14]
push ecx
push ebx
push esi
call sub.MSVCR100.dll_memcpy
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 0x14]
add ebx, dword [ebp - 0x1720]
inc dword [ebp - 0x16e8]
cdq
xor eax, edx
sub eax, edx
add esp, 0xc
add esi, ecx
cmp dword [ebp - 0x16e8], eax
jl 0x11122172
cmp dword [0x1127ecf0], 0
je 0x111221b3
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [ebp - 0x1808], eax
mov ecx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x16fc]
mov edx, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp - 0x16f4]
add eax, 0xb
push eax
mov eax, dword [ebp - 0x1770]
push edx
push eax
push ecx
mov ecx, dword [ebp - 0x16d0]
call fcn.1111daa0
cmp dword [0x1127ecf0], 0
mov esi, eax
je 0x1112220a
call dword [sym.imp.WINMM.dll_timeGetTime]
mov edx, dword [ebp - 0x1808]
mov ebx, eax
sub edx, ebx
add dword [ebp - 0x17a8], edx
mov dword [ebp - 0x180c], ebx
jmp 0x11122210
mov ebx, dword [ebp - 0x180c]
mov edx, dword [ebp - 0x16fc]
lea eax, [ebp - 0x1744]
push eax
push 0
lea ecx, [esi + 0xc]
push ecx
mov ecx, dword [ebp - 0x16d0]
push edx
call fcn.1111f2d0
add dword [ebp - 0x1758], esi
cmp dword [0x1127ecf0], 0
je 0x1112224c
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, ebx
add dword [ebp - 0x178c], eax
mov eax, dword [ebp - 0x1728]
add edi, 0x18
cmp edi, dword [eax + 4]
jne 0x11121ed0
mov ecx, dword [ebp - 0x16f4]
push ecx
call dword [sym.imp.MSVCR100.dll_free]
mov esi, dword [ebp - 0x16d0]
add esp, 4
xor ebx, ebx
mov edi, dword [ebp - 0x1728]
mov edx, dword [edi + 4]
mov ecx, dword [edi]
cmp ecx, edx
je 0x111222c1
mov eax, edx
cmp edx, edx
je 0x111222be
jmp 0x11122290
mov ebx, dword [eax]
mov dword [ecx], ebx
mov ebx, dword [eax + 4]
mov dword [ecx + 4], ebx
mov ebx, dword [eax + 8]
mov dword [ecx + 8], ebx
mov ebx, dword [eax + 0xc]
mov dword [ecx + 0xc], ebx
mov ebx, dword [eax + 0x10]
mov dword [ecx + 0x10], ebx
mov ebx, dword [eax + 0x14]
mov dword [ecx + 0x14], ebx
add eax, 0x18
add ecx, 0x18
cmp eax, edx
jne 0x11122290
xor ebx, ebx
mov dword [edi + 4], ecx
lea edx, [ebp - 0x1744]
push edx
push ebx
mov ecx, esi
call fcn.1111f570
xor edi, edi
cmp byte [ebp - 0x16d1], 0
mov byte [esi + 0x7a2], 0
mov dword [ebp - 0x122c], ebx
mov dword [ebp - 0x1228], ebx
mov dword [ebp - 0x1224], ebx
mov dword [ebp - 0x1220], ebx
je 0x11122396
cmp byte [esi + 0x7a3], 0
je 0x11122396
mov esi, dword [ebp - 0x1744]
cmp esi, dword [ebp - 0x1740]
je 0x11122396
lea ecx, [ecx]
mov eax, dword [esi]
mov ecx, 0x9e
cmp word [eax], cx
jne 0x1112238b
movzx ecx, word [eax + 2]
mov dword [ebp - 0x1248], ecx
movzx edx, word [eax + 6]
add edx, ecx
mov dword [ebp - 0x1240], edx
movzx ecx, word [eax + 4]
mov dword [ebp - 0x1244], ecx
movsx eax, word [eax + 8]
cdq
xor eax, edx
sub eax, edx
add eax, ecx
mov dword [ebp - 0x123c], eax
lea eax, [ebp - 0x122c]
push eax
lea ecx, [ebp - 0x1248]
push ecx
mov edx, eax
push edx
call dword [sym.imp.USER32.dll_UnionRect]
mov ecx, dword [esi]
movsx eax, word [ecx + 8]
movzx ecx, word [ecx + 6]
cdq
xor eax, edx
sub eax, edx
imul eax, ecx
add ebx, eax
add edi, dword [esi + 4]
add esi, 0xc
cmp esi, dword [ebp - 0x1740]
jne 0x11122320
mov ecx, dword [ebp - 0x1224]
mov eax, dword [ebp - 0x1220]
sub ecx, dword [ebp - 0x122c]
sub eax, dword [ebp - 0x1228]
xor esi, esi
cmp byte [ebp - 0x16d1], 0
je 0x11122432
mov edx, dword [ebp - 0x16d0]
cmp byte [edx + 0x7a3], 0
je 0x11122432
mov edx, dword [edx + 0x1c]
test edx, edx
jne 0x11122432
mov edx, dword [ebp - 0x16d0]
cmp byte [edx + 0x28], 0
jne 0x11122432
cmp edi, 0x1f40
jl 0x11122432
imul eax, ecx
cdq
and edx, 3
add eax, edx
sar eax, 2
cmp ebx, eax
jl 0x11122432
lea eax, [ebp - 0x122c]
push 0x1127ed38
push eax
call fcn.110b3950
add esp, 8
test al, al
je 0x11122432
mov eax, dword [ebp - 0x16d8]
lea ecx, [ebp - 0x1744]
push ecx
mov ecx, dword [ebp - 0x16d0]
push edi
lea edx, [ebp - 0x122c]
push edx
push eax
call fcn.1111f5d0
mov esi, eax
mov edi, dword [ebp - 0x1744]
neg esi
sbb esi, esi
and esi, 2
cmp edi, dword [ebp - 0x1740]
je 0x11122494
mov ebx, dword [ebp - 0x16d0]
lea ecx, [ecx]
mov ecx, dword [ebx + 0x1c]
test ecx, ecx
jne 0x1112246b
cmp byte [ebx + 0x28], cl
jne 0x1112246b
mov edx, dword [edi + 4]
mov eax, dword [edi]
push esi
push edx
push eax
mov ecx, ebx
call fcn.1111b480
mov ecx, dword [edi]
push ecx
call dword [sym.imp.MSVCR100.dll_free]
mov ecx, dword [ebp - 0x1740]
add edi, 0xc
add esp, 4
cmp edi, ecx
jne 0x11122450
mov eax, dword [ebp - 0x1744]
cmp eax, ecx
je 0x11122494
mov dword [ebp - 0x1740], eax
mov edx, dword [ebp - 0x122c]
mov eax, dword [ebp - 0x1228]
mov ecx, dword [ebp - 0x1224]
mov dword [0x1127ed38], edx
mov edx, dword [ebp - 0x1220]
mov dword [0x1127ed3c], eax
mov dword [0x1127ed40], ecx
mov dword [0x1127ed44], edx
mov ebx, dword [ebp - 0x16d0]
xor edi, edi
xor esi, esi
mov dword [ebp - 0x1708], edi
cmp dword [ebx + 0x770], esi
je 0x111225b2
lea eax, [ebx + 0x30]
push eax
mov dword [ebp - 0x1750], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [ebx + 0x8c]
lea ebx, [edi + 8]
xor edx, edx
cmp dword [eax - 0x30], edx
je 0x11122515
mov ecx, dword [eax]
cmp ecx, edi
jbe 0x11122507
mov edi, ecx
mov ecx, dword [eax + 4]
mov dword [eax], edx
cmp ecx, esi
jbe 0x11122512
mov esi, ecx
mov dword [eax + 4], edx
cmp dword [eax + 8], edx
je 0x11122532
mov ecx, dword [eax + 0x38]
cmp ecx, edi
jbe 0x11122523
mov edi, ecx
mov ecx, dword [eax + 0x3c]
mov dword [eax + 0x38], edx
cmp ecx, esi
jbe 0x1112252f
mov esi, ecx
mov dword [eax + 0x3c], edx
cmp dword [eax + 0x40], edx
je 0x1112254f
mov ecx, dword [eax + 0x70]
cmp ecx, edi
jbe 0x11122540
mov edi, ecx
mov ecx, dword [eax + 0x74]
mov dword [eax + 0x70], edx
cmp ecx, esi
jbe 0x1112254c
mov esi, ecx
mov dword [eax + 0x74], edx
cmp dword [eax + 0x78], edx
je 0x11122578
mov ecx, dword [eax + 0xa8]
cmp ecx, edi
jbe 0x11122560
mov edi, ecx
mov ecx, dword [eax + 0xac]
mov dword [eax + 0xa8], edx
cmp ecx, esi
jbe 0x11122572
mov esi, ecx
mov dword [eax + 0xac], edx
add eax, 0xe0
dec ebx
jne 0x111224f8
mov dword [ebp - 0x1708], edi
cmp edi, edx
jne 0x111225a5
lea ecx, [esi + esi*4]
add ecx, ecx
mov eax, 0x38e38e39
mul ecx
mov edi, edx
shr edi, 2
mov dword [ebp - 0x1708], edi
mov edx, dword [ebp - 0x1750]
push edx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, dword [ebp - 0x17a0]
cmp dword [0x1127ecf0], 0
mov ebx, eax
je 0x1112268a
xor eax, eax
mov word [ebp - 0x8c], ax
test edi, edi
je 0x11122627
mov ecx, esi
mov dword [ebp - 0x17a0], ecx
fild dword [ebp - 0x17a0]
test ecx, ecx
jns 0x111225f2
fadd qword [0x111fb600]
mov edx, edi
mov dword [ebp - 0x17a0], edx
fild dword [ebp - 0x17a0]
test edx, edx
jns 0x1112260a
fadd qword [0x111fb600]
fdivp st(1)
sub esp, 8
lea eax, [ebp - 0x8c]
fstp qword [esp]
push str._.2f
push eax
call dword [sym.imp.MSVCR100.dll__swprintf]
add esp, 0x10
mov eax, 0x10624dd3
mul esi
shr edx, 6
lea ecx, [ebp - 0x8c]
push ecx
push edx
mov ecx, dword [ebp - 0x17b4]
mov eax, 0x10624dd3
mul edi
mov eax, dword [ebp - 0x1758]
shr edx, 6
push edx
mov edx, dword [ebp - 0x176c]
push edx
mov edx, dword [ebp - 0x178c]
push eax
mov eax, dword [ebp - 0x17a8]
push ecx
mov ecx, dword [ebp - 0x17c8]
push edx
mov edx, dword [ebp - 0x1778]
push eax
mov eax, dword [ebp - 0x177c]
push ecx
push edx
push eax
push ebx
push str.EndFrame_d_ms__blt_d_ms__cvt_d_ms__fnd_d_ms__pck_d_ms__snd_d_ms__lyr_d_ms__sentPkd_d__raw_d___netKB_u__rawKB_u__cratio_s_n
call fcn.111bd7b0
add esp, 0x34
mov edi, dword [ebp - 0x16d0]
mov ecx, dword [edi + 0x1c]
test ecx, ecx
jne 0x111229e2
cmp byte [edi + 0x28], cl
jne 0x111229e2
xor ebx, ebx
cmp dword [ebp + 0x20], ebx
jne 0x111229e4
mov ecx, dword [0x1127b21c]
lea edx, [ebp - 0x16e8]
push edx
mov dword [ebp - 0x16e8], ebx
call fcn.1115abd0
mov esi, eax
test esi, esi
je 0x11122725
mov eax, dword [ebp - 0x16e8]
cmp eax, dword [ebp - 0x17d0]
jne 0x111226f0
push eax
mov eax, dword [ebp - 0x1764]
push eax
push esi
call sub.MSVCR100.dll_memcmp
add esp, 0xc
test eax, eax
je 0x11122725
lea ecx, [ebp - 0x1744]
push ecx
push esi
mov ecx, edi
call fcn.1111f3b0
mov edx, dword [ebp - 0x1764]
push edx
mov ebx, 1
call dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x16e8]
mov dword [ebp - 0x1764], esi
mov dword [ebp - 0x17d0], eax
jmp 0x1112272c
push esi
call dword [sym.imp.MSVCR100.dll_free]
mov esi, dword [ebp - 0x1758]
add esp, 4
cmp byte [edi + 0x7a2], 0
je 0x11122763
lea ecx, [ebp - 0x1744]
push ecx
push 0
mov ecx, edi
call fcn.1111f570
push esi
push str.Sent_EndFrame__dwSentPacked_d__n
mov byte [edi + 0x7a2], 0
call fcn.111bd7b0
add esp, 8
test esi, esi
jne 0x11122773
test ebx, ebx
jne 0x1112277d
inc dword [ebp - 0x1788]
jmp 0x1112278a
mov dword [ebp - 0x1788], 0
push 1
push 0
push 0
mov ecx, edi
call fcn.1111b480
cmp byte [edi + 0x29], 0
je 0x111227a9
lea edx, [ebp - 0x186c]
push edx
lea eax, [ebp - 0x185c]
push eax
mov ecx, edi
call fcn.1111b120
mov byte [edi + 0x29], 0
cmp dword [ebp + 0x24], 0
jne 0x111227e8
mov eax, dword [ebp - 0x1794]
inc eax
mov dword [ebp - 0x1794], eax
cmp eax, 7
jg 0x111227e8
cmp dword [ebp - 0x1788], 2
jl 0x111227d9
mov ecx, edi
mov edi, dword [ecx + 0x76c]
mov esi, ecx
jmp 0x11122873
mov edx, edi
mov edi, dword [edx + 0x768]
mov esi, edx
jmp 0x11122873
cmp dword [ebp - 0x1768], 0
jne 0x111227fb
mov dword [ebp - 0x1768], 1
inc dword [ebp - 0x17d8]
cmp dword [ebp - 0x1788], 2
mov dword [ebp - 0x1794], 0
jl 0x1112281e
mov esi, edi
mov edi, dword [esi + 0x76c]
jmp 0x11122828
mov eax, edi
mov edi, dword [eax + 0x768]
mov esi, eax
cmp dword [ebp + 0x24], 0
je 0x11122873
mov ebx, dword [ebp - 0x177c]
mov ecx, dword [ebp - 0x170c]
mov edx, dword [ebp - 0x1754]
mov eax, dword [ebp - 0x16ec]
push ebx
push ecx
push edx
push eax
push str.Info._First_scrape_blit__d_d_d_d_ms_n
call fcn.111bd7b0
add esp, 0x14
cmp byte [ebp - 0x170d], 0
je 0x1112286c
cmp ebx, 0x50
jb 0x1112286c
mov byte [ebp - 0x16d1], 0
mov dword [ebp + 0x24], 0
cmp dword [esi + 0x2c], 0
je 0x11122889
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, dword [esi + 0x2c]
cmp eax, 0x3e8
jb 0x1112288f
add edi, dword [esi + 0x764]
cmp dword [esi + 0x770], 0
je 0x1112291d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 0x1708]
mov ebx, dword [ebp - 0x16d0]
push ecx
mov esi, eax
add ebx, 0x778
push esi
mov ecx, ebx
call fcn.1111ef90
mov edx, dword [ebp - 0x16d0]
mov eax, dword [edx + 0x774]
push eax
push esi
mov ecx, ebx
call fcn.1111efc0
lea ecx, [ebp - 0x17e4]
push ecx
mov ecx, ebx
call fcn.1111ed50
mov ebx, dword [ebp - 0x16d0]
sub esi, eax
mov eax, dword [ebp - 0x17e4]
je 0x111228ff
mov edx, dword [ebx + 0x770]
imul edx, esi
cmp eax, edx
jbe 0x11122923
xor edx, edx
div dword [ebx + 0x770]
sub eax, esi
cmp eax, edi
jle 0x11122923
mov ecx, dword [ebx + 0x774]
mov edi, eax
cmp eax, ecx
jbe 0x11122923
mov edi, ecx
jmp 0x11122923
mov ebx, dword [ebp - 0x16d0]
mov eax, dword [ebx + 0x798]
test eax, eax
je 0x11122936
push eax
call fcn.110ee380
add esp, 4
mov esi, dword [ebp - 0x1744]
cmp esi, dword [ebp - 0x1740]
je 0x11122988
mov eax, dword [ebx + 0x1c]
test eax, eax
jne 0x1112295f
cmp byte [ebx + 0x28], al
jne 0x1112295f
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.1111b480
mov eax, dword [esi]
push eax
call dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x1740]
add esi, 0xc
add esp, 4
cmp esi, eax
jne 0x11122944
mov ecx, dword [ebp - 0x1744]
cmp ecx, eax
je 0x11122988
mov dword [ebp - 0x1740], ecx
test edi, edi
je 0x111208e0
call dword [sym.imp.WINMM.dll_timeGetTime]
mov esi, dword [ebp - 0x16d0]
mov ecx, dword [esi + 0x24]
push edi
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp byte [esi + 0x28], 0
jne 0x111208e0
call dword [sym.imp.WINMM.dll_timeGetTime]
mov edx, esi
mov ecx, dword [edx + 0x2c]
test ecx, ecx
je 0x111208e0
sub eax, ecx
cmp eax, 0x32
jae 0x111208e0
mov ecx, 0x32
sub ecx, eax
push ecx
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x111208e0
xor ebx, ebx
mov esi, dword [ebp - 0x1728]
cmp esi, ebx
je 0x11122a16
cmp dword [esi], ebx
je 0x11122a05
mov ecx, esi
call dword [sym.imp.MSVCP100.dll_public:_void___thiscall_std::_Container_base0::_Orphan_all_void_]
mov eax, dword [esi]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
push esi
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [edi + 0x798]
cmp eax, ebx
je 0x11122a2f
push eax
call fcn.110ee340
add esp, 4
mov dword [edi + 0x798], ebx
mov esi, dword [ebp - 0x1744]
mov ebx, dword [sym.imp.MSVCR100.dll_free]
cmp esi, dword [ebp - 0x1740]
je 0x11122a68
mov edx, dword [esi]
push edx
call ebx
mov eax, dword [ebp - 0x1740]
add esi, 0xc
add esp, 4
cmp esi, eax
jne 0x11122a43
mov ecx, dword [ebp - 0x1744]
cmp ecx, eax
je 0x11122a68
mov dword [ebp - 0x1740], ecx
mov eax, dword [ebp - 0x16fc]
push eax
call ebx
mov ecx, dword [ebp - 0x16f0]
push ecx
call ebx
mov edx, dword [ebp - 0x1774]
push edx
call ebx
mov eax, dword [ebp - 0x17e0]
mov esi, dword [ebp - 0x17a4]
mov ebx, dword [sym.imp.GDI32.dll_SelectObject]
add esp, 0xc
test eax, eax
je 0x11122aa0
push eax
push esi
call ebx
mov eax, dword [ebp - 0x17e8]
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
test eax, eax
je 0x11122ab3
push eax
call edi
mov eax, dword [ebp - 0x17f0]
test eax, eax
je 0x11122ac1
push eax
push esi
call ebx
mov eax, dword [ebp - 0x17f8]
test eax, eax
je 0x11122ace
push eax
call edi
mov eax, dword [ebp - 0x17cc]
test eax, eax
je 0x11122adc
push eax
push esi
call ebx
mov eax, dword [ebp - 0x17c0]
test eax, eax
je 0x11122ae9
push eax
call edi
mov eax, dword [ebp - 0x17dc]
test eax, eax
je 0x11122af7
push eax
push esi
call ebx
mov eax, dword [ebp - 0x17b8]
test eax, eax
je 0x11122b04
push eax
call edi
test esi, esi
je 0x11122b1b
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebp - 0x17bc]
mov dword [ebp - 0x1730], eax
mov esi, dword [ebp - 0x171c]
test esi, esi
je 0x11122b37
mov ecx, dword [ebp - 0x16d8]
push 0
push ecx
call dword [sym.imp.GDI32.dll_SelectClipRgn]
push esi
call edi
mov eax, dword [ebp - 0x1724]
test eax, eax
je 0x11122b44
push eax
call edi
mov edi, dword [ebp - 0x175c]
mov edx, dword [ebp - 0x16d8]
push edi
push edx
call ebx
mov ebx, dword [ebp - 0x1784]
mov esi, eax
cmp esi, ebx
je 0x11122b92
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0x16d8]
push eax
push edi
push ebx
push esi
lea ecx, [ebp - 0x21c]
push str.Error._h_x__hDib_x__hbmpOld_x__hdcscrape_x__e_d_n
push ecx
call dword [sym.imp.USER32.dll_wsprintfW]
lea edx, [ebp - 0x21c]
push edx
call fcn.111bd7b0
add esp, 0x20
mov eax, dword [ebp - 0x17c4]
xor edi, edi
cmp eax, edi
je 0x11122bad
push edi
push eax
mov eax, dword [ebp - 0x16d8]
push eax
call dword [sym.imp.GDI32.dll_SelectPalette]
mov eax, dword [ebp - 0x1760]
cmp eax, edi
je 0x11122bbe
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov ecx, dword [ebp - 0x179c]
push ecx
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
push ebx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov esi, dword [ebp - 0x16d0]
cmp dword [esi + 0x854], edi
je 0x11122c25
mov eax, dword [esi + 0x7c8]
cmp eax, edi
je 0x11122bfa
push eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov dword [esi + 0x7c8], edi
mov edx, dword [esi + 0x854]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x11122c1f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Error_closing_dibsec__e_d_n
call fcn.111bd7b0
add esp, 8
mov dword [esi + 0x854], edi
mov eax, dword [ebp - 0x16d8]
mov esi, dword [sym.imp.GDI32.dll_DeleteDC]
push eax
call esi
mov ecx, dword [ebp - 0x1730]
push ecx
call esi
mov byte [ebp - 4], 0
cmp dword [ebp - 0x1744], edi
je 0x11122c64
lea ecx, [ebp - 0x1744]
call dword [sym.imp.MSVCP100.dll_public:_void___thiscall_std::_Container_base0::_Orphan_all_void_]
mov edx, dword [ebp - 0x1744]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [ebp - 0x1830]
mov dword [ebp - 0x1744], edi
mov dword [ebp - 0x1740], edi
mov dword [ebp - 0x173c], edi
cmp eax, edi
je 0x11122c87
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.111d9022
mov esp, ebp
pop ebp
ret 0x24