Function at 0x402308
Capabilities:
Capture screenshot

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffa0
pushal
push dword [0x4098a8]
call sub.user32.dll_GetDC
mov dword [ebp - 0x28], eax
push 0
call sub.gdi32.dll_CreateCompatibleDC
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x3c]
push eax
push dword [0x4098a8]
call sub.user32.dll_GetClientRect
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x48], eax
sub dword [ebp - 0x48], 0x28
sub eax, dword [ebp - 0x38]
push eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x3c]
mov dword [ebp - 0x40], eax
push eax
push dword [ebp - 0x28]
call sub.gdi32.dll_CreateCompatibleBitmap
mov dword [ebp - 0x2c], eax
push eax
push dword [ebp - 0x24]
call sub.gdi32.dll_SelectObject
push dword [0x4098b0]
push dword [ebp - 0x24]
call sub.gdi32.dll_SelectObject
push 6
lea eax, [ebp - 0x3c]
push eax
push dword [ebp - 0x24]
call sub.user32.dll_FillRect
push 0
push 0x1b
push 0
push dword [ebp - 0x24]
call sub.gdi32.dll_MoveToEx
push 0x1b
push dword [ebp - 0x34]
push dword [ebp - 0x24]
call sub.gdi32.dll_LineTo
push 0
push 0
push 0x5a
push dword [ebp - 0x24]
call sub.gdi32.dll_MoveToEx
push dword [ebp - 0x48]
push 0x5a
push dword [ebp - 0x24]
call sub.gdi32.dll_LineTo
push 0
push 0
push 0x1e1
push dword [ebp - 0x24]
call sub.gdi32.dll_MoveToEx
push dword [ebp - 0x48]
push 0x1e1
push dword [ebp - 0x24]
call sub.gdi32.dll_LineTo
lea eax, [ebp - 0x60]
push eax
push 1
push section..data
push dword [ebp - 0x24]
call sub.gdi32.dll_GetTextExtentPointA
push dword [ebp - 0x60]
pop dword [0x4098f0]
mov dword [ebp - 0x50], 0x1e
mov esi, dword [0x4098c0]
shl esi, 4
mov edi, dword [0x4098cc]
and edi, 0xfffffff0
jmp 0x402503
cmp edi, esi
jne 0x402428
push 0xff
push dword [ebp - 0x24]
call sub.gdi32.dll_SetTextColor
mov eax, dword [ebp - 0x50]
jmp 0x402432
push 0
push dword [ebp - 0x24]
call sub.gdi32.dll_SetTextColor
mov eax, esi
cmp dword [0x409790], 2
jne 0x402443
add eax, dword [0x409798]
push eax
push 0x4072a9
lea eax, [ebp - 9]
push eax
call sub.user32.dll_wsprintfA
add esp, 0xc
push eax
lea eax, [ebp - 9]
push eax
push dword [ebp - 0x50]
push 5
push dword [ebp - 0x24]
call sub.gdi32.dll_TextOutA
push 0
push dword [ebp - 0x24]
call sub.gdi32.dll_SetTextColor
mov eax, esi
add eax, dword [0x4098b8]
push 0x10
push eax
lea eax, [ebp - 0x1d]
push eax
call sub.kernel32.dll_RtlMoveMemory
xor ecx, ecx
jmp 0x4024c9
mov al, byte ss:[ecx + ebp - 0x1d]
cmp al, 0x20
jae 0x40249a
mov byte ss:[ecx + ebp - 0x1d], 0x2e
jmp 0x4024c8
cmp al, 0
jge 0x4024c8
mov ah, byte ss:[ecx + ebp - 0x1c]
cmp ah, 0
jl 0x4024c7
cmp ah, 0x20
jle 0x4024bf
cmp ah, 0x7f
jge 0x4024bf
mov byte ss:[ecx + ebp - 0x1d], 0x2e
mov byte ss:[ecx + ebp - 0x1c], ah
jmp 0x4024c7
mov word ss:[ecx + ebp - 0x1d], 0x2e2e
inc ecx
inc ecx
cmp ecx, 0xf
jbe 0x402489
mov eax, dword [0x4098c8]
sub eax, esi
cmp eax, 0x10
jl 0x4024df
mov eax, 0x10
push eax
lea eax, [ebp - 0x1d]
push eax
push dword [ebp - 0x50]
push 0x1eb
push dword [ebp - 0x24]
call sub.gdi32.dll_TextOutA
add dword [ebp - 0x50], 0x12
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x48]
jae 0x40250f
add esi, 0x10
cmp esi, dword [0x4098c8]
jb 0x402412
mov edi, 0x64
xor esi, esi
mov ebx, dword [0x4098cc]
and ebx, 0xf
jmp 0x402564
cmp ebx, esi
jne 0x402534
push 0xff
push dword [ebp - 0x24]
call sub.gdi32.dll_SetTextColor
jmp 0x40253e
push 0
push dword [ebp - 0x24]
call sub.gdi32.dll_SetTextColor
push esi
push 0x4072ae
lea eax, [ebp - 9]
push eax
call sub.user32.dll_wsprintfA
add esp, 0xc
push eax
lea eax, [ebp - 9]
push eax
push 5
push edi
push dword [ebp - 0x24]
call sub.gdi32.dll_TextOutA
add edi, 0x17
inc esi
cmp esi, 0xf
jbe 0x402521
mov ebx, dword [0x4098c0]
shl ebx, 4
mov dword [0x4098e8], ebx
mov dword [0x4098ec], ebx
mov edx, dword [0x4098c8]
sub edx, ebx
mov dword [ebp - 0x50], 0x1e
mov dword [ebp - 0x4c], 0x64
mov dword [ebp - 0x54], 0x1eb
xor esi, esi
mov edi, dword [0x4098b8]
jmp 0x4026b1
push edx
xor eax, eax
mov al, byte [edi + ebx]
push eax
push 0x4072b3
lea eax, [ebp - 9]
push eax
call sub.user32.dll_wsprintfA
add esp, 0xc
cmp ebx, dword [0x4098d4]
jb 0x4025d0
cmp ebx, dword [0x4098d8]
jbe 0x4025e0
cmp ebx, dword [0x4098d4]
ja 0x402630
cmp ebx, dword [0x4098d8]
jb 0x402630
test dword [0x4098f4], 8
jne 0x402620
push 0
push dword [ebp - 0x24]
call sub.gdi32.dll_SetBkColor
push 0xf00f
push dword [ebp - 0x24]
call sub.gdi32.dll_SetTextColor
push 0x550009
push 0x12
push dword [0x4098f0]
push dword [ebp - 0x50]
push dword [ebp - 0x54]
push dword [ebp - 0x24]
call sub.gdi32.dll_PatBlt
jmp 0x402667
push 0
push ebx
call fcn.0040115a
test eax, eax
je 0x402630
jmp 0x4025ec
push 0xffffff
push dword [ebp - 0x24]
call sub.gdi32.dll_SetBkColor
cmp byte [edi + ebx], 0
jne 0x40264a
mov eax, 0xc0c0c0
jmp 0x40265e
test esi, 1
je 0x402659
mov eax, 0x800000
jmp 0x40265e
mov eax, 0xf00000
push eax
push dword [ebp - 0x24]
call sub.gdi32.dll_SetTextColor
push 2
lea eax, [ebp - 9]
push eax
push dword [ebp - 0x50]
push dword [ebp - 0x4c]
push dword [ebp - 0x24]
call sub.gdi32.dll_TextOutA
inc dword [0x4098ec]
add dword [ebp - 0x4c], 0x17
mov eax, dword [ebp - 0x60]
add dword [ebp - 0x54], eax
pop edx
cmp dword [ebp - 0x4c], 0x1d4
jne 0x4026af
mov dword [ebp - 0x4c], 0x64
mov dword [ebp - 0x54], 0x1eb
add dword [ebp - 0x50], 0x12
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x48]
jae 0x4026b9
inc esi
inc ebx
cmp esi, edx
jb 0x4025a8
dec dword [0x4098ec]
add dword [ebp - 0x48], 0x12
push dword [ebp - 0x40]
push dword [ebp - 0x48]
push dword [ebp - 0x24]
call fcn.004027c5
xor eax, eax
push 0xcc0020
push eax
push eax
push dword [ebp - 0x24]
push dword [ebp - 0x44]
push dword [ebp - 0x40]
push eax
push eax
push dword [ebp - 0x28]
call sub.gdi32.dll_BitBlt
push dword [ebp - 0x24]
call sub.gdi32.dll_DeleteDC
push dword [ebp - 0x28]
push dword [0x4098a8]
call sub.user32.dll_ReleaseDC
push dword [ebp - 0x2c]
call sub.gdi32.dll_DeleteObject
popal
leave
ret 0xc