Function at 0x41dda5
Capabilities:
Capture screenshot

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd0
cmp dword [0x507338], 0
je 0x41e39d
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
test edi, edi
jns 0x41de1c
mov ecx, dword [0x4f7c84]
push 2
pop ebx
add ecx, 0xffffffe3
mov dword [ebp - 0x30], 0xa
cmp byte [0x5050f2], 0
push 4
pop edx
cmovne ebx, edx
mov dword [ebp - 0x14], ecx
xor eax, eax
mov dword [ebp - 4], edx
inc eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 8], eax
mov eax, dword [0x506ce0]
mov dword [ebp - 0x34], eax
mov eax, dword [0x4f7dfc]
mov dword [ebp - 0x50], eax
mov eax, dword [0x506cd4]
mov dword [ebp - 0x54], eax
mov eax, dword [0x506cf4]
mov dword [ebp - 0x38], eax
jmp 0x41dea0
mov eax, dword [0x4f7c88]
mov ecx, dword [0x4f7df8]
add eax, 0xffffffc4
cdq
mov ebx, ecx
idiv ecx
mov esi, dword [0x4f7c84]
imul ebx, edi
add esi, 0xffffffec
mov dword [ebp - 8], eax
mov eax, dword [0x506cdc]
mov dword [ebp - 0x34], eax
mov eax, dword [0x4fa020]
add ebx, 0x16
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp + 0x18]
test cl, 2
push 0xc
cmovne eax, dword [0x4fa024]
mov dword [ebp - 0x50], eax
xor eax, eax
inc eax
mov dword [ebp - 0x14], esi
and ecx, eax
mov dword [ebp - 0x10], eax
mov eax, dword [0x4fa02c]
cmove eax, dword [0x4fa028]
test ecx, ecx
mov dword [ebp - 0x54], eax
mov eax, dword [0x506cf0]
cmovne eax, dword [0x506cec]
pop edx
mov dword [ebp - 0x3c], esi
mov dword [ebp - 4], edx
mov dword [ebp - 0x38], eax
cmp edi, dword [ebp - 8]
jge 0x41e39a
mov ecx, esi
mov eax, ecx
mov esi, edx
sub eax, edx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], eax
push 5
cdq
pop ecx
idiv ecx
mov dword [ebp - 0xc], eax
test edi, edi
jns 0x41e0fd
cmp byte [0x5050f2], 0
je 0x41e0fd
push dword [0x506cf8]
xor eax, eax
lea edi, [ebp - 0x28]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
call fcn.00419c9f
push dword [ebp + 8]
call fcn.00419cef
cmp dword [ebp + 0x14], 0
pop ecx
pop ecx
jl 0x41df26
mov eax, dword [ebp + 0x14]
xor edx, edx
push 0x3c
pop ecx
div ecx
push edx
push eax
push 0x4cf214
lea eax, [ebp - 0x28]
push 0xa
push eax
call fcn.00405a8d
add esp, 0x14
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
or ecx, 0xffffffff
sub ecx, eax
mov eax, dword [ebp - 0xc]
add eax, ecx
mov dword [ebp - 0xc], eax
jmp 0x41df29
mov eax, dword [ebp - 0xc]
xor ecx, ecx
mov edi, ecx
test eax, eax
jle 0x41df95
mov edx, dword [ebp + 0x10]
movzx ecx, word [edx + edi*2]
test cx, cx
je 0x41df93
and dword [ebp - 8], 0
and dword [ebp - 4], 0
dec eax
cmp edi, eax
jne 0x41df57
xor eax, eax
cmp word [edx + edi*2 + 2], ax
push 1
pop eax
cmovne ecx, eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 4]
push eax
push ecx
call fcn.0041ab0a
add esp, 0xc
push 0xcc0020
push dword [ebp - 8]
push dword [ebp - 4]
push dword [0x506d00]
push 6
push 5
push ebx
push esi
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
mov eax, dword [ebp - 0xc]
add esi, 5
inc edi
cmp edi, eax
jl 0x41df31
xor ecx, ecx
mov eax, dword [ebp + 0x10]
cmp word [eax + edi*2], cx
jne 0x41dff8
lea eax, [ebp - 8]
mov dword [ebp - 8], ecx
push eax
lea eax, [ebp - 4]
mov dword [ebp - 4], ecx
push eax
push 0x20
call fcn.0041ab0a
mov ecx, dword [ebp - 0xc]
add esp, 0xc
cmp dword [ebp + 0x14], 0
lea eax, [ecx + 1]
cmovl eax, ecx
cmp edi, eax
jge 0x41dff6
sub eax, edi
mov dword [ebp - 0x3c], eax
mov edi, eax
push 0xcc0020
push dword [ebp - 8]
push dword [ebp - 4]
push dword [0x506d00]
push 6
push 5
push ebx
push esi
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
add esi, 5
sub edi, 1
jne 0x41dfce
xor ecx, ecx
cmp dword [ebp + 0x14], 0
jl 0x41e0a0
lea eax, [ebp - 4]
mov dword [ebp - 4], ecx
push eax
lea eax, [ebp - 0xc]
mov dword [ebp - 0xc], ecx
push eax
push 0x20
call fcn.0041ab0a
add esp, 0xc
push 0xcc0020
push dword [ebp - 4]
push dword [ebp - 0xc]
push dword [0x506d00]
push 6
push 5
push ebx
push esi
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, dword [0x4f7c84]
mov ecx, dword [ebp - 0x28]
imul eax, eax, 5
sub esi, eax
sub esi, 0x1d
test cl, cl
je 0x41e0a0
lea edi, [ebp - 0x28]
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0xc]
push eax
movsx ax, cl
movzx eax, ax
push eax
call fcn.0041ab0a
add esp, 0xc
push 0xcc0020
push dword [ebp - 4]
push dword [ebp - 0xc]
push dword [0x506d00]
push 6
push 5
push ebx
push esi
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
add esi, 5
inc edi
mov al, byte [edi]
mov cl, al
test al, al
jne 0x41e05c
mov eax, dword [0x4f7c84]
add eax, 0xffffffe2
cmp esi, eax
jge 0x41e0ef
xor eax, eax
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 4]
push eax
push 0x20
call fcn.0041ab0a
mov eax, dword [0x4f7c84]
add esp, 0xc
sub eax, esi
sub eax, 0x1e
push 0xcc0020
push dword [ebp - 8]
push dword [ebp - 4]
push dword [0x506d00]
push 6
push eax
push ebx
push esi
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_BitBlt]
xor eax, eax
push eax
call fcn.00419c9f
pop ecx
jmp 0x41e39a
mov eax, dword [ebp - 4]
push dword [ebp - 0x50]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x30]
add eax, ebx
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp + 8]
push ebx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x20], eax
call dword [sym.imp.GDI32.dll_SetTextColor]
push dword [ebp - 0x54]
push ebx
call dword [sym.imp.GDI32.dll_SetBkColor]
push ebx
call fcn.00419cef
pop ecx
push dword [ebp - 0x34]
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [0x4f7390]
mov dword [ebp - 0x34], eax
cmp ecx, 2
je 0x41e160
test ecx, ecx
jne 0x41e15c
push ebx
call dword [sym.imp.GDI32.dll_GetFontLanguageInfo]
test al, 2
jne 0x41e160
and dword [ebp - 0x10], 0
cmp dword [ebp + 0x14], 0
jl 0x41e241
mov eax, dword [ebp + 0x14]
xor edx, edx
push 0x3c
pop ecx
div ecx
push edx
push eax
push str.__d:_02d
lea eax, [ebp - 0xd0]
push 0x7b
push eax
call fcn.00405a8d
lea esi, [ebp - 0x2c]
add esp, 0x14
lea edi, [ebp - 0x4c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp + 0xc]
cmp edi, 0xffffffff
jne 0x41e1a8
mov eax, dword [ebp - 0x28]
dec eax
dec dword [ebp - 0x40]
mov dword [ebp - 0x48], eax
push 0xc24
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0xd0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp - 0xd0]
push eax
push ebx
call dword [sym.imp.USER32.dll_DrawTextA]
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x40], eax
cmp ecx, dword [ebp - 0x1c]
jge 0x41e23e
cmp dword [ebp - 0x10], 0
je 0x41e200
mov eax, dword [ebp - 4]
add dword [ebp - 0x2c], ecx
mov dword [ebp - 0x4c], eax
lea esi, [ecx + eax]
mov eax, 0x20824
mov dword [ebp - 0x44], esi
jmp 0x41e21b
mov edx, dword [ebp - 0x14]
mov eax, edx
mov esi, dword [ebp - 0x18]
sub eax, ecx
sub dword [ebp - 0x24], ecx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x14], eax
mov eax, 0x826
mov dword [ebp - 0x44], edx
push eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0xd0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp - 0xd0]
push eax
push ebx
call dword [sym.imp.USER32.dll_DrawTextA]
jmp 0x41e241
mov esi, dword [ebp - 0x18]
cmp edi, 0xffffffff
jne 0x41e24f
push dword [ebp + 0x10]
call dword [sym.imp.USER32.dll_CharUpperW]
push dword [ebp + 0x10]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edx, dword [0x507334]
mov ecx, eax
mov dword [ebp - 0x18], ecx
mov eax, 0x28826
test edx, edx
je 0x41e295
cmp dword [ebp - 0x10], 0
mov dword [ebp - 0x1c], 0x8824
cmove eax, dword [ebp - 0x1c]
push eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x2c]
push eax
push ecx
push dword [ebp + 0x10]
push ebx
call edx
test eax, eax
je 0x41e2a3
cmp eax, 2
je 0x41e2dc
jmp 0x41e2b9
cmp dword [ebp - 0x10], 0
mov edx, 0x8824
cmove eax, edx
jmp 0x41e2a9
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
push eax
lea eax, [ebp - 0x2c]
push eax
push ecx
push dword [ebp + 0x10]
push ebx
call dword [sym.imp.USER32.dll_DrawTextW]
cmp dword [ebp - 0x10], 0
mov ecx, 0x8c24
mov eax, 0x28c26
cmove eax, ecx
push eax
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x18]
push dword [ebp + 0x10]
push ebx
call dword [sym.imp.USER32.dll_DrawTextW]
push dword [ebp - 0x38]
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push 8
mov dword [ebp - 0x18], eax
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [ebp - 0x30]
inc ecx
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x14]
push ecx
je 0x41e31a
mov ecx, dword [ebp - 0x2c]
inc eax
sub ecx, dword [ebp - 0x24]
add ecx, eax
push ecx
push dword [ebp - 0x28]
push esi
jmp 0x41e322
inc eax
push eax
push dword [ebp - 0x28]
push dword [ebp - 0x24]
push ebx
call dword [sym.imp.GDI32.dll_Rectangle]
test edi, edi
je 0x41e335
mov eax, dword [ebp - 8]
dec eax
cmp edi, eax
jne 0x41e382
push dword [0x506cf0]
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
push ebx
call esi
mov ecx, dword [ebp - 0x3c]
inc ecx
mov dword [ebp - 0x1c], ecx
test edi, edi
jne 0x41e361
push 0x18
push ecx
push 0x14
push dword [ebp - 4]
push ebx
call dword [sym.imp.GDI32.dll_Rectangle]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 8]
dec eax
cmp edi, eax
jne 0x41e388
mov eax, dword [0x4f7c88]
add eax, 0xffffffdb
push eax
push ecx
push dword [ebp - 0x30]
push dword [ebp - 4]
push ebx
call dword [sym.imp.GDI32.dll_Rectangle]
jmp 0x41e388
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x34]
push ebx
call esi
push dword [ebp - 0x38]
push ebx
call esi
push dword [ebp - 0x18]
push ebx
call esi
pop edi
pop esi
pop ebx
leave
ret