Function at 0x103a4e1
Capabilities:
Capture screenshot

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x38
push ebx
xor ebx, ebx
cmp dword [0x104385c], ebx
jne 0x103a8a3
push esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [ebp + 8]
mov ecx, eax
sub ecx, dword [esi + 0x18]
cmp ecx, 0x64
jb 0x103a8a2
push edi
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
mov dword [esi + 0x18], eax
cmp dword [esi + 0x20], ebx
jne 0x103a837
sub eax, dword [esi + 0x1c]
cmp eax, 0x3e8
jb 0x103a8a1
push 0x77
push dword [esi + 0x24]
call dword [sym.imp.USER32.dll_LoadBitmapA]
push 0x78
push dword [esi + 0x24]
mov dword [ebp - 0xc], eax
call dword [sym.imp.USER32.dll_LoadBitmapA]
push ebx
mov dword [ebp - 0x1c], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push ebx
mov dword [ebp + 8], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [esi + 4], eax
mov dword [ebp - 8], ebx
cmp eax, ebx
je 0x103a582
push dword [ebp - 0xc]
push eax
call edi
push 0x28
push 0x28
push dword [esi + 4]
mov dword [ebp - 8], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [esi], eax
jmp 0x103a584
mov dword [esi], ebx
cmp dword [ebp - 0xc], ebx
je 0x103a8a8
cmp dword [ebp - 0x1c], ebx
je 0x103a8a8
cmp dword [esi], ebx
je 0x103a8a8
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x103a8a8
cmp dword [ebp + 8], ebx
je 0x103a8a8
push 0x28
push 0x708
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push dword [esi]
mov dword [esi + 8], eax
push dword [ebp + 8]
call edi
push dword [ebp - 0xc]
mov dword [ebp - 0x30], eax
push dword [esi + 4]
call edi
push 0xe
call dword [sym.imp.USER32.dll_GetSysColor]
push 0xd
mov dword [ebp - 0x28], eax
call dword [sym.imp.USER32.dll_GetSysColor]
mov dword [ebp - 0x2c], eax
mov dword [esi + 0xc], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], ebx
push 0xff0062
push 0x28
push 0x28
push ebx
push ebx
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_PatBlt]
push dword [ebp - 0xc]
push dword [esi + 4]
call edi
push 0xcc0020
push ebx
push 0x90
push dword [esi + 4]
push 0x24
push 0x24
push 4
push ebx
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
cmp dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], ebx
jle 0x103a69d
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x20], 5
mov eax, dword [ebp - 4]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x20]
imul eax, eax
cdq
push 0xa
pop ecx
idiv ecx
mov ecx, dword [ebp - 0x18]
lea eax, [eax + ecx*2 + 2]
mov dword [ebp - 0x34], eax
add eax, 0x13
test byte [ebp - 4], 1
je 0x103a671
push dword [ebp - 0x28]
jmp 0x103a674
push dword [ebp - 0x2c]
push eax
push dword [ebp - 4]
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SetPixel]
dec dword [ebp - 0x20]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
add eax, 0xffffffee
cmp eax, 0xa
jl 0x103a647
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x24]
jl 0x103a639
cmp dword [ebp - 0x10], ebx
jl 0x103a6fb
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x20], 5
mov eax, dword [ebp - 4]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x20]
imul eax, eax
cdq
push 0xa
pop ecx
idiv ecx
mov ecx, dword [ebp - 0x14]
lea eax, [eax + ecx + 2]
mov dword [ebp - 0x34], eax
add eax, 0x13
test byte [ebp - 4], 1
je 0x103a6da
push dword [ebp - 0x28]
jmp 0x103a6dd
push dword [ebp - 0x2c]
push eax
push dword [ebp - 4]
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SetPixel]
dec dword [ebp - 0x20]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
add eax, 0xffffffee
cmp eax, dword [ebp - 0x10]
jle 0x103a6b0
push dword [ebp - 0x1c]
push dword [esi + 4]
call edi
mov eax, dword [esi + 0xc]
test al, 1
je 0x103a70f
push 0xf
pop eax
jmp 0x103a715
and eax, 2
imul eax, eax, 0xf
push 0x8800c6
push ebx
push eax
push dword [esi + 4]
push 0x14
push 0xf
push dword [ebp - 0x34]
push dword [ebp - 0x38]
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [esi + 8]
push dword [esi + 4]
call edi
mov eax, dword [esi + 0xc]
push 0xcc0020
imul eax, eax, 0x28
push ebx
push ebx
push dword [ebp + 8]
push 0x28
push 0x28
push ebx
push eax
push dword [esi + 4]
call dword [sym.imp.GDI32.dll_BitBlt]
inc dword [esi + 0xc]
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xa
jl 0x103a5f7
add dword [ebp - 0x14], 2
inc dword [ebp - 0x24]
cmp dword [ebp - 0x14], 8
jl 0x103a5f4
push 0xff0062
push 0x28
push 0x28
push ebx
push ebx
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_PatBlt]
mov dword [ebp - 0x18], ebx
push dword [ebp - 0xc]
push dword [esi + 4]
call edi
push 0xcc0020
push ebx
push dword [ebp - 0x18]
push dword [esi + 4]
push 0x24
push 0x24
push 4
push ebx
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [esi + 8]
push dword [esi + 4]
call edi
mov eax, dword [esi + 0xc]
push 0xcc0020
imul eax, eax, 0x28
push ebx
push ebx
push dword [ebp + 8]
push 0x28
push 0x28
push ebx
push eax
push dword [esi + 4]
call dword [sym.imp.GDI32.dll_BitBlt]
add dword [ebp - 0x18], 0x24
inc dword [esi + 0xc]
cmp dword [ebp - 0x18], 0xb4
jl 0x103a791
push dword [ebp - 0x30]
push dword [ebp + 8]
call edi
mov dword [esi + 0xc], ebx
cmp dword [ebp - 8], ebx
je 0x103a804
push dword [ebp - 8]
push dword [esi + 4]
call edi
push dword [ebp - 8]
call fcn.0102841b
push dword [ebp - 0xc]
call fcn.0102841b
push dword [ebp - 0x1c]
call fcn.0102841b
push dword [ebp + 8]
call fcn.0102841b
xor eax, eax
inc eax
push eax
mov dword [esi + 0x20], eax
push dword [0x1043894]
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [0x1043894]
call dword [sym.imp.USER32.dll_GetDC]
push dword [esi + 8]
mov dword [ebp + 8], eax
push dword [esi + 4]
call edi
mov dword [ebp - 0x30], eax
mov eax, dword [esi + 0xc]
push 0xcc0020
imul eax, eax, 0x28
push ebx
push eax
push dword [esi + 4]
push 0x28
push 0x28
push dword [esi + 0x14]
push dword [esi + 0x10]
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x30]
push dword [esi + 4]
call edi
push dword [ebp + 8]
push dword [0x1043894]
call dword [sym.imp.USER32.dll_ReleaseDC]
push 0x400
call fcn.01031099
inc dword [esi + 0xc]
cmp dword [esi + 0xc], 0x2d
jle 0x103a8a1
mov dword [esi + 0xc], ebx
pop edi
pop esi
pop ebx
leave
ret 4
cmp dword [ebp - 8], ebx
je 0x103a8b5
push dword [ebp - 8]
push dword [esi + 4]
call edi
push dword [ebp - 8]
call fcn.0102841b
push dword [esi + 4]
call fcn.0102841b
push dword [ebp - 0xc]
call fcn.0102841b
push dword [ebp - 0x1c]
call fcn.0102841b
push dword [ebp + 8]
call fcn.0102841b
mov dword [0x104385c], 1
jmp 0x103a8a1