Function at 0x43be48
Capabilities:
Capture screenshot

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, dword [ebp + 8]
mov esi, 0x4de0a0
mov edi, 0x4de074
mov dword [esi], 1
mov byte [0x4de039], 0
mov byte [0x4de037], 0
mov byte [0x4de036], 0
mov byte [0x4de038], 0
mov byte [0x4de034], 1
mov byte [0x4de035], 0
mov dword [0x4de09c], 0xcc0020
mov eax, dword [esi]
mov eax, dword [ebx + eax*4]
test eax, eax
je 0x43bf51
mov edx, dword [esi]
cmp byte [eax], 0x2d
jne 0x43bf51
push 0x68
mov ecx, dword [esi]
push eax
call fcn.004bce0c
add esp, 8
test eax, eax
je 0x43bec5
mov byte [0x4de039], 1
push 0x69
mov eax, dword [esi]
mov edx, dword [ebx + eax*4]
push edx
call fcn.004bce0c
add esp, 8
test eax, eax
je 0x43bee3
mov dword [0x4de09c], 0xbb0226
push 0x6e
mov ecx, dword [esi]
mov eax, dword [ebx + ecx*4]
push eax
call fcn.004bce0c
add esp, 8
test eax, eax
je 0x43befe
mov byte [0x4de034], 0
push 0x63
mov edx, dword [esi]
mov ecx, dword [ebx + edx*4]
push ecx
call fcn.004bce0c
add esp, 8
test eax, eax
je 0x43bf19
mov byte [0x4de036], 1
push 0x73
mov eax, dword [esi]
mov edx, dword [ebx + eax*4]
push edx
call fcn.004bce0c
add esp, 8
test eax, eax
je 0x43bf34
mov byte [0x4de037], 1
push 0x74
mov ecx, dword [esi]
mov eax, dword [ebx + ecx*4]
push eax
call fcn.004bce0c
add esp, 8
test eax, eax
je 0x43bf4f
mov byte [0x4de038], 1
inc dword [esi]
mov edx, dword [esi]
cmp dword [ebx + edx*4], 0
jne 0x43bf86
cmp byte [0x4de036], 0
je 0x43bf73
push 0
call fcn.0043bdcc
mov eax, 1
jmp 0x43c85a
push 0
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0043e834
jmp 0x43c85a
push 0x4ca688
mov ecx, dword [esi]
mov eax, dword [ebx + ecx*4]
push eax
call fcn.004bcfe4
add esp, 8
test eax, eax
jne 0x43bfa7
xor edx, edx
mov dword [0x4de058], edx
jmp 0x43bfb7
mov ecx, dword [esi]
mov eax, dword [ebx + ecx*4]
push eax
call fcn.004b78d4
mov dword [0x4de058], eax
mov eax, dword [0x4de058]
test eax, eax
je 0x43bfd2
cmp byte [eax + 0x4e5], 0
je 0x43bfd2
cmp dword [eax + 0x524], 0
jne 0x43bfe5
push 7
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0043e834
jmp 0x43c85a
cmp byte [0x4de039], 0
je 0x43bffc
mov ecx, dword [0x4de058]
mov eax, dword [ecx]
push eax
call fcn.0044c8dc
inc dword [esi]
mov edx, dword [esi]
cmp dword [ebx + edx*4], 0
jne 0x43c038
cmp byte [0x4de034], 0
je 0x43c025
mov ecx, dword [0x4de058]
push ecx
call fcn.00438fc8
mov eax, 1
jmp 0x43c85a
push 0
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0043e834
jmp 0x43c85a
cmp byte [0x4de038], 0
je 0x43c054
mov ecx, dword [esi]
mov eax, dword [ebx + ecx*4]
push eax
call fcn.004c4ccc
pop ecx
mov dword [0x4de054], eax
inc dword [esi]
mov edx, dword [esi]
cmp dword [ebx + edx*4], 0
je 0x43c065
mov ecx, dword [esi]
cmp dword [ebx + ecx*4 + 4], 0
jne 0x43c078
push 0
push 0
mov eax, dword [ebx]
push eax
push 0
call fcn.0043e834
jmp 0x43c85a
mov edx, dword [esi]
mov ecx, dword [ebx + edx*4]
push ecx
call fcn.004c4ccc
pop ecx
mov dword [0x4de064], eax
mov eax, dword [esi]
mov edx, dword [ebx + eax*4 + 4]
push edx
call fcn.004c4ccc
pop ecx
mov dword [0x4de068], eax
mov dword [0x4de06c], 0xffffffff
mov dword [0x4de070], 0xffffffff
add dword [esi], 2
cmp byte [0x4de037], 0
je 0x43c101
mov ecx, dword [esi]
cmp dword [ebx + ecx*4], 0
je 0x43c101
mov eax, dword [esi]
mov edx, dword [ebx + eax*4]
push edx
call fcn.00488810
test eax, eax
je 0x43c101
mov ecx, dword [esi]
cmp dword [ebx + ecx*4 + 4], 0
je 0x43c101
mov eax, dword [esi]
mov edx, dword [ebx + eax*4]
push edx
call fcn.004c4ccc
pop ecx
mov dword [0x4de06c], eax
mov ecx, dword [esi]
mov eax, dword [ebx + ecx*4 + 4]
push eax
call fcn.004c4ccc
pop ecx
mov dword [0x4de070], eax
add dword [esi], 2
mov edx, dword [esi]
mov eax, dword [ebx + edx*4]
test eax, eax
je 0x43c174
mov edx, dword [esi]
push eax
call fcn.00488810
test eax, eax
je 0x43c174
mov ecx, dword [esi]
cmp dword [ebx + ecx*4 + 4], 0
je 0x43c174
mov eax, dword [esi]
cmp dword [ebx + eax*4 + 8], 0
je 0x43c174
mov edx, dword [esi]
cmp dword [ebx + edx*4 + 0xc], 0
je 0x43c174
mov ecx, dword [esi]
mov eax, dword [ebx + ecx*4]
push eax
call fcn.004c4ccc
pop ecx
mov dword [edi], eax
mov edx, dword [esi]
mov ecx, dword [ebx + edx*4 + 4]
push ecx
call fcn.004c4ccc
pop ecx
mov dword [edi + 4], eax
mov eax, dword [esi]
mov edx, dword [ebx + eax*4 + 8]
push edx
call fcn.004c4ccc
pop ecx
mov dword [edi + 8], eax
mov ecx, dword [esi]
mov eax, dword [ebx + ecx*4 + 0xc]
push eax
call fcn.004c4ccc
pop ecx
mov dword [edi + 0xc], eax
add dword [esi], 4
jmp 0x43c18b
xor edx, edx
mov dword [edi], edx
xor ecx, ecx
mov dword [edi + 4], ecx
mov dword [edi + 8], 0xffffffff
mov dword [edi + 0xc], 0xffffffff
mov eax, dword [esi]
cmp dword [ebx + eax*4], 0
jne 0x43c1a6
push 0
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0043e834
jmp 0x43c85a
push 0
push 0x100
mov ecx, dword [ebp + 0xc]
push ecx
mov eax, dword [esi]
push eax
push ebx
call fcn.00489740
mov dword [esi], eax
cmp dword [esi], 0
jge 0x43c1d4
push 3
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0043e834
jmp 0x43c85a
mov ecx, dword [ebp + 0xc]
push ecx
mov eax, dword [ebp + 0xc]
push eax
call fcn.0040b314
test eax, eax
jne 0x43c1f8
push 3
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0043e834
jmp 0x43c85a
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004c408c
pop ecx
push 0x4cd05e
mov eax, dword [ebp + 0xc]
push eax
call fcn.004bd134
add esp, 8
test eax, eax
jne 0x43c22a
push 3
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0043e834
jmp 0x43c85a
cmp byte [0x4de036], 0
je 0x43c258
push 0
push 0x4de05c
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0043bd50
mov esi, eax
mov dword [0x4de01c], esi
test esi, esi
je 0x43c268
mov byte [0x4de035], 1
jmp 0x43c2d4
push 1
push 0x4de05c
mov eax, dword [ebp + 0xc]
push eax
call fcn.0043bd50
xor edx, edx
mov dword [0x4de01c], edx
xor ecx, ecx
mov dword [0x4de05c], ecx
push 0x4de05c
push 0x4de01c
mov eax, dword [0x4de058]
mov edx, dword [eax]
push edx
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0040bf04
cmp dword [0x4de01c], 0
jne 0x43c2d4
cmp dword [0x4cd054], 0
je 0x43c2ac
call fcn.0043bbac
jmp 0x43c268
mov eax, dword [ebp + 0xc]
push eax
mov edx, dword [ebx]
push edx
push 0
push 0x835
call fcn.0040a8fc
push eax
push 0x4dea10
call sub.USER32.dll_wsprintfA
add esp, 0x10
xor eax, eax
jmp 0x43c85a
mov edx, dword [0x4de058]
mov ecx, dword [edx]
push ecx
call sub.USER32.dll_GetDC
mov ebx, eax
mov dword [0x4de03c], ebx
test ebx, ebx
jne 0x43c2f5
xor eax, eax
jmp 0x43c85a
xor edx, edx
mov dword [0x4de024], edx
xor ecx, ecx
mov dword [0x4de028], ecx
xor eax, eax
mov dword [0x4de044], eax
xor edx, edx
mov dword [0x4de020], edx
xor ecx, ecx
mov dword [0x4de048], ecx
xor eax, eax
mov dword [0x4de02c], eax
push ebx
call sub.GDI32.dll_CreateCompatibleDC
mov esi, eax
mov dword [0x4de040], esi
test esi, esi
je 0x43c70e
mov eax, dword [0x4de01c]
push eax
push esi
call sub.GDI32.dll_SelectObject
mov dword [0x4de024], eax
push 0x4de084
push 0x18
mov edx, dword [0x4de01c]
push edx
call sub.GDI32.dll_GetObjectA
mov ecx, dword [0x4de03c]
push ecx
call sub.GDI32.dll_CreateCompatibleDC
mov ebx, eax
mov dword [0x4de044], ebx
test ebx, ebx
je 0x43c70e
mov eax, dword [0x4de058]
mov edx, dword [eax + 0x524]
push edx
push ebx
call sub.GDI32.dll_SelectObject
mov dword [0x4de028], eax
cmp dword [0x4de05c], 0
je 0x43c3d6
mov ecx, dword [0x4de058]
mov eax, dword [ecx + 0x528]
test eax, eax
je 0x43c3c5
push eax
call fcn.0043bb3c
test eax, eax
jne 0x43c3c5
mov edx, dword [0x4de058]
mov ecx, dword [edx + 0x528]
push ecx
call sub.GDI32.dll_DeleteObject
mov eax, dword [0x4de058]
mov edx, dword [0x4de05c]
mov dword [eax + 0x528], edx
cmp dword [0x4de06c], 0xffffffff
jne 0x43c41d
cmp dword [0x4de070], 0xffffffff
jne 0x43c41d
mov eax, dword [edi + 8]
cmp eax, 0xffffffff
jne 0x43c410
cmp dword [edi + 0xc], 0xffffffff
jne 0x43c410
mov edx, dword [0x4de088]
mov dword [0x4de06c], edx
mov ecx, dword [0x4de08c]
mov dword [0x4de070], ecx
jmp 0x43c41d
mov dword [0x4de06c], eax
mov eax, dword [edi + 0xc]
mov dword [0x4de070], eax
cmp dword [edi + 8], 0xffffffff
jne 0x43c43b
cmp dword [edi + 0xc], 0xffffffff
jne 0x43c43b
mov edx, dword [0x4de088]
mov dword [edi + 8], edx
mov ecx, dword [0x4de08c]
mov dword [edi + 0xc], ecx
push 3
mov eax, dword [0x4de044]
push eax
call sub.GDI32.dll_SetStretchBltMode
cmp byte [0x4de038], 0
je 0x43c607
mov edx, dword [0x4de03c]
push edx
call sub.GDI32.dll_CreateCompatibleDC
mov ebx, eax
mov dword [0x4de048], ebx
test ebx, ebx
je 0x43c70e
mov eax, dword [edi + 0xc]
push eax
mov edx, dword [edi + 8]
push edx
mov ecx, dword [0x4de03c]
push ecx
call sub.GDI32.dll_CreateCompatibleBitmap
mov ebx, eax
mov dword [0x4de02c], ebx
test ebx, ebx
je 0x43c70e
push ebx
mov eax, dword [0x4de048]
push eax
call sub.GDI32.dll_SelectObject
mov dword [0x4de030], eax
push 0xcc0020
mov edx, dword [edi + 4]
push edx
mov ecx, dword [edi]
push ecx
mov eax, dword [0x4de040]
push eax
mov edx, dword [edi + 0xc]
push edx
mov ecx, dword [edi + 8]
push ecx
push 0
push 0
mov eax, dword [0x4de048]
push eax
call sub.GDI32.dll_BitBlt
mov edx, dword [0x4de030]
push edx
mov ecx, dword [0x4de048]
push ecx
call sub.GDI32.dll_SelectObject
mov eax, dword [0x4de024]
push eax
mov edx, dword [0x4de040]
push edx
call sub.GDI32.dll_SelectObject
mov ecx, dword [0x4de02c]
push ecx
mov eax, dword [0x4de040]
push eax
call sub.GDI32.dll_SelectObject
mov dword [0x4de024], eax
mov edx, dword [0x4de054]
push edx
mov ecx, dword [edi + 0xc]
push ecx
mov eax, dword [edi + 8]
push eax
mov edx, dword [0x4de048]
push edx
mov ecx, dword [0x4de040]
push ecx
call fcn.0043b04c
mov ebx, eax
mov dword [0x4de020], ebx
test ebx, ebx
je 0x43c70e
push 0
mov eax, dword [0x4de044]
push eax
call sub.GDI32.dll_SetTextColor
mov dword [0x4de04c], eax
push 0xffffff
mov edx, dword [0x4de044]
push edx
call sub.GDI32.dll_SetBkColor
mov dword [0x4de050], eax
push 0x8800c6
mov ecx, dword [edi + 0xc]
push ecx
mov eax, dword [edi + 8]
push eax
push 0
push 0
mov edx, dword [0x4de048]
push edx
mov ecx, dword [0x4de070]
push ecx
mov eax, dword [0x4de06c]
push eax
mov edx, dword [0x4de068]
push edx
mov ecx, dword [0x4de064]
push ecx
mov eax, dword [0x4de044]
push eax
call sub.GDI32.dll_StretchBlt
push 0xee0086
mov edx, dword [edi + 0xc]
push edx
mov ecx, dword [edi + 8]
push ecx
push 0
push 0
mov eax, dword [0x4de040]
push eax
mov edx, dword [0x4de070]
push edx
mov ecx, dword [0x4de06c]
push ecx
mov eax, dword [0x4de068]
push eax
mov edx, dword [0x4de064]
push edx
mov ecx, dword [0x4de044]
push ecx
call sub.GDI32.dll_StretchBlt
mov eax, dword [0x4de04c]
push eax
mov edx, dword [0x4de044]
push edx
call sub.GDI32.dll_SetTextColor
mov ecx, dword [0x4de050]
push ecx
mov eax, dword [0x4de044]
push eax
call sub.GDI32.dll_SetBkColor
jmp 0x43c64a
mov edx, dword [0x4de09c]
push edx
mov ecx, dword [edi + 0xc]
push ecx
mov eax, dword [edi + 8]
push eax
mov edx, dword [edi + 4]
push edx
mov ecx, dword [edi]
push ecx
mov eax, dword [0x4de040]
push eax
mov edx, dword [0x4de070]
push edx
mov ecx, dword [0x4de06c]
push ecx
mov eax, dword [0x4de068]
push eax
mov edx, dword [0x4de064]
push edx
mov ecx, dword [0x4de044]
push ecx
call sub.GDI32.dll_StretchBlt
cmp byte [0x4de034], 0
je 0x43c6db
mov eax, dword [0x4de058]
mov ebx, dword [eax + 0x528]
test ebx, ebx
je 0x43c687
push 0
push ebx
mov eax, dword [0x4de03c]
push eax
call sub.GDI32.dll_SelectPalette
mov dword [0x4de060], eax
mov edx, dword [0x4de03c]
push edx
call sub.GDI32.dll_RealizePalette
jmp 0x43c68f
xor ecx, ecx
mov dword [0x4de060], ecx
push 0xcc0020
mov edx, dword [0x4de068]
push edx
mov eax, dword [0x4de064]
push eax
mov ecx, dword [0x4de044]
push ecx
mov ecx, dword [0x4de070]
push ecx
mov ecx, dword [0x4de06c]
push ecx
push edx
push eax
mov eax, dword [0x4de03c]
push eax
call sub.GDI32.dll_BitBlt
mov eax, dword [0x4de060]
test eax, eax
je 0x43c6db
push 0
push eax
mov edx, dword [0x4de03c]
push edx
call sub.GDI32.dll_SelectPalette
mov eax, dword [edi]
add eax, dword [edi + 8]
mov edx, dword [0x4de058]
cmp eax, dword [edx + 0x534]
jle 0x43c6f4
mov dword [edx + 0x534], eax
mov eax, dword [edi + 4]
add eax, dword [edi + 0xc]
mov edx, dword [0x4de058]
cmp eax, dword [edx + 0x538]
jle 0x43c70e
mov dword [edx + 0x538], eax
cmp dword [0x4de048], 0
je 0x43c74f
cmp dword [0x4de020], 0
je 0x43c743
mov ecx, dword [0x4de020]
push ecx
mov eax, dword [0x4de048]
push eax
call sub.GDI32.dll_SelectObject
mov dword [0x4de020], eax
mov edx, dword [0x4de020]
push edx
call sub.GDI32.dll_DeleteObject
mov ecx, dword [0x4de048]
push ecx
call sub.GDI32.dll_DeleteDC
cmp dword [0x4de044], 0
je 0x43c77f
cmp dword [0x4de028], 0
je 0x43c773
mov eax, dword [0x4de028]
push eax
mov edx, dword [0x4de044]
push edx
call sub.GDI32.dll_SelectObject
mov ecx, dword [0x4de044]
push ecx
call sub.GDI32.dll_DeleteDC
cmp dword [0x4de040], 0
je 0x43c7c3
cmp dword [0x4de024], 0
je 0x43c7b8
mov eax, dword [0x4de024]
push eax
mov edx, dword [0x4de040]
push edx
call sub.GDI32.dll_SelectObject
cmp dword [0x4de02c], 0
je 0x43c7b8
mov ecx, dword [0x4de02c]
push ecx
call sub.GDI32.dll_DeleteObject
mov eax, dword [0x4de040]
push eax
call sub.GDI32.dll_DeleteDC
cmp byte [0x4de035], 0
jne 0x43c841
cmp byte [0x4de036], 0
je 0x43c7f0
mov edx, dword [0x4de05c]
push edx
mov ecx, dword [0x4de01c]
push ecx
mov eax, dword [ebp + 0xc]
push eax
call fcn.0043bc68
test eax, eax
jne 0x43c841
cmp dword [0x4de01c], 0
je 0x43c805
mov edx, dword [0x4de01c]
push edx
call sub.GDI32.dll_DeleteObject
xor ecx, ecx
mov dword [0x4de01c], ecx
cmp dword [0x4de05c], 0
je 0x43c841
mov eax, dword [0x4de05c]
push eax
call fcn.0043bb74
test eax, eax
jne 0x43c841
mov edx, dword [0x4de05c]
push edx
call fcn.0043bb3c
test eax, eax
jne 0x43c841
mov ecx, dword [0x4de05c]
push ecx
call sub.GDI32.dll_DeleteObject
mov eax, dword [0x4de03c]
push eax
mov edx, dword [0x4de058]
mov ecx, dword [edx]
push ecx
call sub.USER32.dll_ReleaseDC
mov eax, 1
pop edi
pop esi
pop ebx
pop ebp
ret 8