Function at 0x425730
Capabilities:
Capture screenshot

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
mov eax, dword [0x447150]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword fs:[0x2c]
mov edx, dword [0x4538f0]
push ebx
mov ebx, dword [ebp + 8]
push esi
mov edx, dword [eax + edx*4]
mov eax, dword [0x453540]
push edi
mov edi, ecx
mov dword [ebp - 0x3c], ebx
cmp eax, dword [edx + 4]
jg 0x4259cc
push ebx
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
lea eax, [ebp - 0x24]
push eax
push ebx
mov dword [ebp - 0x30], esi
call dword [sym.imp.USER32.dll_GetClientRect]
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
push dword [ebp - 0x1c]
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov ebx, dword [ebp - 0x2c]
push eax
push ebx
mov dword [ebp - 0x38], eax
call dword [sym.imp.GDI32.dll_SelectObject]
push 8
mov dword [ebp - 0x34], eax
call sub.gdiplus.dll_GdipAlloc
mov esi, eax
mov dword [ebp - 0x28], esi
test esi, esi
je 0x4257d5
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0
push eax
push ebx
call sub.gdiplus.dll_GdipCreateFromHDC
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x28]
mov dword [esi], eax
jmp 0x4257d7
xor esi, esi
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
push 0
push 0
push dword [0x447144]
push dword [esi]
call sub.gdiplus.dll_GdipFillRectangleI
test eax, eax
je 0x4257f5
mov dword [esi + 4], eax
movss xmm0, dword [edi + 0x88]
lea eax, [edi + 0xa4]
subss xmm0, dword [0x43ef3c]
push eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x14]
push eax
movss dword [ebp - 0x28], xmm0
call dword [sym.imp.USER32.dll_IntersectRect]
cmp eax, 1
jne 0x425966
cmp dword [edi + 0xb4], 0
mov eax, dword [edi + 0x94]
jne 0x4258b2
test eax, eax
je 0x425840
mov eax, dword [eax + 4]
jmp 0x425842
xor eax, eax
push 8
push 9
push dword [edi]
push 6
push eax
push dword [esi]
call sub.gdiplus.dll_GdipDrawImageRectI
test eax, eax
je 0x425859
mov dword [esi + 4], eax
movss xmm0, dword [ebp - 0x28]
xor ebx, ebx
comiss xmm0, dword [0x43d138]
jbe 0x425924
nop dword [eax]
mov ecx, dword [edi]
mov eax, dword [edi + 0x98]
add ecx, 8
add ecx, ebx
test eax, eax
je 0x425886
mov eax, dword [eax + 4]
jmp 0x425888
xor eax, eax
push 1
push 9
push ecx
push 6
push eax
push dword [esi]
call sub.gdiplus.dll_GdipDrawImageRectI
test eax, eax
je 0x42589e
mov dword [esi + 4], eax
movss xmm1, dword [ebp - 0x28]
inc ebx
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
ja 0x425870
jmp 0x425924
test eax, eax
je 0x4258bb
mov eax, dword [eax + 4]
jmp 0x4258bd
xor eax, eax
push 8
push 9
push dword [edi]
push 6
push eax
push dword [esi]
call sub.gdiplus.dll_GdipDrawImageRectI
test eax, eax
je 0x4258d4
mov dword [esi + 4], eax
movss xmm0, dword [ebp - 0x28]
xor ebx, ebx
comiss xmm0, dword [0x43d138]
jbe 0x425924
mov ecx, dword [edi]
mov eax, dword [edi + 0x98]
add ecx, 8
add ecx, ebx
test eax, eax
je 0x4258fa
mov eax, dword [eax + 4]
jmp 0x4258fc
xor eax, eax
push 1
push 9
push ecx
push 6
push eax
push dword [esi]
call sub.gdiplus.dll_GdipDrawImageRectI
test eax, eax
je 0x425912
mov dword [esi + 4], eax
movss xmm1, dword [ebp - 0x28]
inc ebx
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
ja 0x4258e4
movd xmm0, dword [edi]
mov eax, dword [edi + 0x9c]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [edi + 0x88]
subss xmm0, dword [0x43ef38]
cvttss2si ecx, xmm0
test eax, eax
je 0x42594e
mov eax, dword [eax + 4]
jmp 0x425950
xor eax, eax
push 8
push 9
push ecx
push 6
push eax
push dword [esi]
call sub.gdiplus.dll_GdipDrawImageRectI
test eax, eax
je 0x425966
mov dword [esi + 4], eax
mov edi, dword [ebp - 0x30]
push 0xcc0020
push 0
push 0
push dword [ebp - 0x2c]
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
push 0
push 0
push edi
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x34]
push edi
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x38]
call dword [sym.imp.GDI32.dll_DeleteObject]
push dword [ebp - 0x2c]
call dword [sym.imp.GDI32.dll_DeleteDC]
push edi
push dword [ebp - 0x3c]
call dword [sym.imp.USER32.dll_ReleaseDC]
push dword [esi]
call sub.gdiplus.dll_GdipDeleteGraphics
push esi
call sub.gdiplus.dll_GdipFree
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004271bb
mov esp, ebp
pop ebp
ret 4
push 0x453540
call fcn.004277cf
add esp, 4
cmp dword [0x453540], 0xffffffff
jne 0x42576b
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0
push eax
push 0xff3a4147
call sub.gdiplus.dll_GdipCreateSolidFill
mov dword [0x447148], eax
mov eax, dword [ebp - 0x2c]
push 0x43bea0
mov dword [0x447144], eax
call fcn.00427682
add esp, 4
push 0x453544
push 0
push ecx
mov dword [esp], 0x3f800000
push 0xff000000
call sub.gdiplus.dll_GdipCreatePen1
push 0x43be90
mov dword [0x453548], eax
call fcn.00427682
push 0x453540
call fcn.00427790
add esp, 8
jmp 0x42576b