Function at 0x100671a
Capabilities:
Capture screenshot

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xdc
mov eax, dword [0x1046080]
push ebx
mov dword [ebp - 4], eax
push esi
push edi
mov ebx, ecx
xor ecx, ecx
xor eax, eax
cmp dword [ebp + 8], ecx
mov dword [ebp - 0xcc], ecx
lea edi, [ebp - 0xc8]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x54], ecx
je 0x1006aae
cmp dword [ebx + 0x1b4], ecx
mov dword [ebp - 0x50], ecx
je 0x1006aae
cmp dword [ebp + 8], ecx
je 0x1006c38
lea eax, [ebp - 0x44]
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_BeginPaint]
push dword [ebp - 0x44]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov esi, eax
xor edi, edi
cmp esi, edi
mov dword [ebp - 0x48], esi
je 0x1006a3d
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x3c]
push eax
push dword [ebp - 0x44]
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
cmp eax, edi
mov dword [ebp - 0xb8], eax
je 0x1022d0e
push eax
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push dword [ebp - 0x38]
mov dword [ebp - 0xb4], eax
push dword [ebp - 0x3c]
push esi
call dword [sym.imp.GDI32.dll_OffsetWindowOrgEx]
cmp esi, edi
je 0x1006a3d
mov eax, dword [ebx + 4]
lea ecx, [ebp - 0x3c]
push ecx
push esi
push eax
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.01006646
push edi
mov ecx, ebx
call fcn.01006448
cmp dword [ebp - 0x50], edi
jne 0x1006aba
cmp word [ebx + 0x104], di
je 0x1006aba
lea eax, [ebp - 0xcc]
push eax
push esi
call dword [sym.imp.GDI32.dll_GetClipBox]
xor ecx, ecx
inc ecx
cmp eax, ecx
je 0x1022d1f
lea eax, [ebp - 0x88]
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebx + 0x1b0]
cmp eax, edi
je 0x100684c
push eax
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0xbc], eax
mov edi, dword [sym.imp.USER32.dll_GetSysColor]
push 0xf
call edi
push eax
push esi
call dword [sym.imp.GDI32.dll_SetBkColor]
push 0x12
call edi
push eax
push esi
call dword [sym.imp.GDI32.dll_SetTextColor]
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x64], ecx
lea edi, [ebp - 0x60]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov dword [ebp - 0xa0], ecx
lea edi, [ebp - 0x9c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x78], ecx
xor eax, eax
lea edi, [ebp - 0x74]
stosd dword es:[edi], eax
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x8c], ecx
stosd dword es:[edi], eax
lea ecx, [ebp - 0x64]
push ecx
push dword [ebx + 0xb0]
stosd dword es:[edi], eax
lea eax, [ebx + 0x104]
push eax
push esi
mov ecx, ebx
call fcn.01006487
lea ecx, [ebp - 0xa0]
push ecx
push dword [ebx + 0xc]
lea eax, [ebx + 0x60]
push eax
push esi
mov ecx, ebx
call fcn.01006487
lea ecx, [ebp - 0x78]
push ecx
push dword [ebx + 0x154]
lea eax, [ebx + 0x158]
push eax
push esi
mov ecx, ebx
call fcn.01006487
mov ecx, dword [ebp - 0x58]
sub ecx, dword [ebp - 0x60]
mov eax, ecx
cdq
sub eax, edx
mov edx, dword [ebp - 0x6c]
sub edx, dword [ebp - 0x74]
sar eax, 1
add ecx, eax
add edx, ecx
cmp edx, dword [ebp - 0x7c]
mov dword [ebp - 0x90], eax
jl 0x1022d33
sub ecx, eax
mov eax, dword [ebp - 0x7c]
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
test eax, eax
jle 0x1006c65
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x80]
sub eax, dword [ebp - 0x5c]
lea esi, [ebp - 0x64]
add eax, dword [ebp - 0x64]
lea edi, [ebp - 0xb0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cdq
sub eax, edx
movsd dword es:[edi], dword [esi]
sar eax, 1
test eax, eax
movsd dword es:[edi], dword [esi]
jle 0x1022d8a
push dword [ebp - 0x4c]
push eax
lea eax, [ebp - 0xb0]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
lea eax, [ebp - 0xb0]
push eax
push dword [ebx + 0xb0]
lea eax, [ebx + 0x104]
push eax
push dword [ebp - 0x48]
mov ecx, ebx
call fcn.01006a5c
mov eax, dword [ebp - 0x58]
mov ecx, eax
sub ecx, dword [ebp - 0x60]
add ecx, dword [ebp - 0x90]
add dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x8c], 0
jne 0x1022d91
mov ecx, dword [ebp - 0x5c]
sub ecx, dword [ebp - 0x64]
cmp ecx, dword [ebp - 0x80]
jg 0x1006c6e
sub eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0x7c]
jg 0x1006c6e
xor eax, eax
cmp dword [ebx + 0x1b0], 0
mov dword [ebx + 0x1b8], eax
je 0x10069cc
push dword [ebp - 0xbc]
push dword [ebp - 0x48]
call dword [sym.imp.GDI32.dll_SelectObject]
cmp dword [ebx + 0x1bc], 0
jne 0x1022e51
mov esi, dword [ebp - 0x48]
xor edi, edi
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x38]
push 0xcc0020
push dword [ebp - 0x38]
push dword [ebp - 0x3c]
push esi
push eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x3c]
push eax
push dword [ebp - 0x38]
push dword [ebp - 0x3c]
push dword [ebp - 0x44]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0xb4]
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0xb8]
call dword [sym.imp.GDI32.dll_DeleteObject]
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
cmp dword [ebp + 8], edi
je 0x1006c54
lea eax, [ebp - 0x44]
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_EndPaint]
cmp dword [ebp - 0x50], edi
jne 0x1006bd7
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor eax, eax
pop ebx
call fcn.01001b2f
leave
ret 4
mov dword [ebp - 0x50], 1
jmp 0x1006760
mov ecx, ebx
call fcn.01006ace
mov dword [ebp - 0x54], eax
jmp 0x100680b
push dword [ebp - 0x54]
mov ecx, ebx
call fcn.01006c08
cmp esi, edi
je 0x1006a46
cmp dword [ebp - 0x54], edi
je 0x1022ea1
push 1
push edi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x1006a46
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDC]
lea ecx, [ebp - 0x3c]
push ecx
push eax
mov dword [ebp - 0x44], eax
call dword [sym.imp.GDI32.dll_GetClipBox]
jmp 0x1006776
push dword [ebp - 0x44]
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ReleaseDC]
jmp 0x1006a3d
and dword [ebp - 0x4c], 0
jmp 0x1006921
xor eax, eax
inc eax
jmp 0x10069ae
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
mov dword [ebp - 0x48], edi
mov esi, edi
jmp 0x10067cf
cmp dword [ebp + 8], edi
jne 0x1006824
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x50], ecx
jmp 0x10069de
mov esi, dword [ebp - 0x70]
sub esi, dword [ebp - 0x78]
cmp esi, dword [ebp - 0x80]
jge 0x100690a
lea ecx, [edx + eax]
mov edx, dword [ebp - 0x94]
sub edx, dword [ebp - 0x9c]
mov dword [ebp - 0x8c], 1
add edx, ecx
cmp edx, dword [ebp - 0x7c]
jge 0x100690a
mov esi, dword [ebp - 0x98]
sub esi, dword [ebp - 0xa0]
cmp esi, dword [ebp - 0x80]
jge 0x100690a
mov dword [ebp - 0x68], 1
lea ecx, [edx + eax]
jmp 0x100690a
xor eax, eax
jmp 0x1006944
mov eax, dword [ebp - 0x80]
sub eax, dword [ebp - 0x70]
lea esi, [ebp - 0x78]
add eax, dword [ebp - 0x78]
lea edi, [ebp - 0xb0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cdq
sub eax, edx
movsd dword es:[edi], dword [esi]
sar eax, 1
test eax, eax
movsd dword es:[edi], dword [esi]
jg 0x1022db2
xor eax, eax
push dword [ebp - 0x4c]
push eax
lea eax, [ebp - 0xb0]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
lea eax, [ebp - 0xb0]
push eax
push dword [ebx + 0x154]
lea eax, [ebx + 0x158]
push eax
push dword [ebp - 0x48]
mov ecx, ebx
call fcn.01006a5c
mov eax, dword [ebp - 0x6c]
sub eax, dword [ebp - 0x74]
add eax, dword [ebp - 0x90]
add dword [ebp - 0x4c], eax
cmp dword [ebp - 0x68], 0
je 0x1022e49
mov eax, dword [ebp - 0x80]
sub eax, dword [ebp - 0x98]
lea esi, [ebp - 0xa0]
add eax, dword [ebp - 0xa0]
lea edi, [ebp - 0xb0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cdq
sub eax, edx
movsd dword es:[edi], dword [esi]
sar eax, 1
test eax, eax
movsd dword es:[edi], dword [esi]
jg 0x1022e20
xor eax, eax
push dword [ebp - 0x4c]
push eax
lea eax, [ebp - 0xb0]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
lea eax, [ebp - 0xb0]
push eax
push dword [ebx + 0xc]
lea eax, [ebx + 0x60]
push eax
push dword [ebp - 0x48]
mov ecx, ebx
call fcn.01006a5c
mov eax, dword [ebp - 0x58]
jmp 0x1006991
push 0
push 0
push 0x129
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
test al, 1
jne 0x10069d9
lea esi, [ebp - 0x88]
lea edi, [ebp - 0xdc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0
movsd dword es:[edi], dword [esi]
push 0xfffffffffffffffe
lea eax, [ebp - 0xdc]
push eax
movsd dword es:[edi], dword [esi]
call dword [sym.imp.USER32.dll_InflateRect]
lea eax, [ebp - 0xdc]
push eax
push dword [ebp - 0x48]
call dword [sym.imp.USER32.dll_DrawFocusRect]
jmp 0x10069d9
cmp dword [ebp + 8], edi
jne 0x1006bf2
push edi
jmp 0x1006bf4