Function at 0x1031d48
Capabilities:
Capture screenshot

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x104
mov eax, dword [0x10372d8]
push ebx
mov dword [ebp - 4], eax
mov eax, dword [0x10376e4]
push edi
xor edi, edi
cmp dword [eax + 0x70], edi
mov ebx, ecx
jne 0x1031d8f
push edi
lea eax, [ebp - 0x104]
push eax
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
jne 0x1031d8f
push edi
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_ValidateRect]
jmp 0x1032121
push esi
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0xa8]
push eax
mov ecx, ebx
call fcn.01031ac3
call fcn.0102dbcf
call fcn.0102dbcf
call fcn.0102dbcf
push eax
push dword [ebp - 0xa8]
call fcn.010301c0
neg eax
sbb eax, eax
mov esi, 0x20000
and eax, esi
mov dword [ebp - 0xc0], eax
call fcn.0102dbcf
push eax
push dword [ebp - 0xa8]
call fcn.010301c0
neg eax
sbb eax, eax
and eax, esi
cmp dword [ebp - 0xa8], edi
mov dword [ebp - 0xd4], eax
je 0x1032120
cmp dword [ebp - 0xbc], edi
je 0x1032120
lea eax, [ebp - 0x60]
push eax
call fcn.0102dbcf
push eax
call fcn.0102e2ac
test eax, eax
jne 0x1031e36
lea eax, [ebp - 0x60]
push eax
push 0x5c
push 0x11
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
test eax, eax
je 0x1032120
lea eax, [ebp - 0xb8]
push eax
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_GetClientRect]
mov esi, dword [ebp - 0xb0]
mov edi, dword [ebp - 0xac]
sub esi, dword [ebp - 0xb8]
sub edi, dword [ebp - 0xb4]
mov eax, dword [0x10376e4]
cmp dword [eax + 0x70], 0
mov dword [ebp - 0xc4], esi
mov dword [ebp - 0xd0], edi
jne 0x1031e87
lea eax, [ebp - 0xa0]
push eax
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_BeginPaint]
jmp 0x1031e90
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_GetDC]
push eax
mov dword [ebp - 0xa4], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push edi
push esi
push dword [ebp - 0xa4]
mov dword [ebp - 0xcc], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov edi, dword [ebp - 0xcc]
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
push eax
push edi
mov dword [ebp - 0xdc], eax
call esi
mov dword [ebp - 0xe4], eax
push 0x19
lea eax, [ebp - 0xb8]
push eax
push edi
call dword [sym.imp.USER32.dll_FillRect]
mov eax, dword [0x10376e4]
cmp dword [eax + 0x70], 0
je 0x1031eff
push 6
call dword [sym.imp.USER32.dll_GetSysColorBrush]
push eax
lea eax, [ebp - 0xb8]
push eax
push edi
call dword [sym.imp.USER32.dll_FrameRect]
lea eax, [ebx + 0x48]
push eax
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
pop ecx
pop ecx
je 0x1031f49
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x1031f24
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
lea eax, [ebp - 0x44]
push eax
push 0x20
lea eax, [ebx + 0x48]
push eax
call fcn.01006b55
mov al, byte [ebp - 0x49]
mov byte [ebx + 0x43], al
lea eax, [ebx + 0x2c]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [ebx + 0x88], eax
push dword [ebx + 0x88]
push edi
call esi
add dword [ebp - 0xb8], 4
add dword [ebp - 0xb4], 2
sub dword [ebp - 0xb0], 4
sub dword [ebp - 0xac], 2
lea esi, [ebp - 0xb8]
lea edi, [ebp - 0xf4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0x17
mov dword [ebp - 0xe0], eax
movsd dword es:[edi], dword [esi]
call dword [sym.imp.USER32.dll_GetSysColor]
mov edi, dword [ebp - 0xcc]
push eax
push edi
call dword [sym.imp.GDI32.dll_SetTextColor]
push 1
push edi
call dword [sym.imp.GDI32.dll_SetBkMode]
mov eax, dword [ebp - 0xc0]
mov esi, dword [sym.imp.USER32.dll_DrawTextW]
or eax, 0xc20
push eax
lea eax, [ebp - 0xf4]
push eax
push 0xffffffffffffffff
push dword [ebp - 0xa8]
push edi
call esi
mov eax, dword [ebp - 0xb8]
cmp dword [ebp - 0xf4], eax
jge 0x1031fdb
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xb0]
cmp dword [ebp - 0xec], eax
jle 0x1031fef
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xc0]
or eax, 0x21
push eax
lea eax, [ebp - 0xb8]
push eax
push 0xffffffffffffffff
push dword [ebp - 0xa8]
push edi
call esi
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xd4]
or eax, 0x10
push eax
lea eax, [ebp - 0xb8]
push eax
push 0xffffffffffffffff
push dword [ebp - 0xbc]
push edi
call esi
mov eax, dword [0x10376e4]
xor esi, esi
cmp dword [eax + 0x70], esi
jne 0x1032063
push 0xcc0020
push esi
push esi
push edi
push dword [ebp - 0xd0]
push dword [ebp - 0xc4]
push esi
push esi
push dword [ebp - 0xa4]
call dword [sym.imp.GDI32.dll_BitBlt]
jmp 0x10320b0
mov eax, dword [ebp - 0xc4]
push 4
push esi
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0xd0]
push esi
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xd8]
push eax
push edi
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebx + 0x8c]
push eax
push dword [ebp - 0xa4]
mov dword [ebp - 0xd8], esi
push dword [ebx + 0xc]
mov dword [ebp - 0xd4], esi
call dword [sym.imp.USER32.dll_UpdateLayeredWindow]
push dword [ebp - 0xe4]
push edi
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0xe0]
push edi
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0xdc]
call dword [sym.imp.GDI32.dll_DeleteObject]
push edi
call dword [sym.imp.GDI32.dll_DeleteDC]
push dword [ebp - 0xa8]
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
push dword [ebp - 0xbc]
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
mov eax, dword [0x10376e4]
cmp dword [eax + 0x70], esi
pop ecx
pop ecx
jne 0x1032111
lea eax, [ebp - 0xa0]
push eax
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x1032120
push dword [ebp - 0xa4]
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_ReleaseDC]
pop esi
mov ecx, dword [ebp - 4]
pop edi
pop ebx
call fcn.01034242
leave
ret