Function at 0x401000
Capabilities:
Print debug messages

Disassembly:
sub esp, 0x204
mov eax, dword [0x419240]
xor eax, esp
mov dword [esp + 0x200], eax
push ebx
mov ebx, dword [esp + 0x20c]
push esi
push edi
push str.ProcessOSD_n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
xor eax, eax
jmp 0x401030
movzx ecx, word [eax + 0x41a640]
mov word [esp + eax + 0xc], cx
add eax, 2
test cx, cx
jne 0x401030
push ebx
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push 0xc
push esi
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push esi
push ebx
mov edi, eax
call dword [sym.imp.USER32.dll_ReleaseDC]
push 1
push ebx
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, dword [0x41a848]
cmp eax, 1
jne 0x4010ae
mov ecx, dword [0x41aa54]
test ecx, ecx
je 0x40108f
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov dword [0x41aa54], 0
push ebx
call dword [sym.imp.USER32.dll_DestroyWindow]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x200]
xor ecx, esp
call fcn.00403856
add esp, 0x204
ret
cmp eax, 2
jne 0x4011ac
cmp edi, 8
jle 0x4011ac
mov ecx, dword [0x41aa54]
call fcn.00401720
mov ecx, dword [0x41aa54]
call fcn.00401750
mov ecx, 0x41a228
mov eax, 0x41a640
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401106
test dx, dx
je 0x401102
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401106
add eax, 4
add ecx, 4
test dx, dx
jne 0x4010e0
xor eax, eax
jmp 0x40110b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x40111a
mov ecx, dword [0x41aa54]
call fcn.00401fc0
mov ecx, 0x40e200
lea eax, [esp + 0xc]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401149
test dx, dx
je 0x401145
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401149
add eax, 4
add ecx, 4
test dx, dx
jne 0x401123
xor eax, eax
jmp 0x40114e
sbb eax, eax
sbb eax, 0xffffffff
mov ecx, dword [0x41aa54]
test eax, eax
je 0x40118f
mov eax, dword [0x41a840]
push eax
push 0x41a640
call fcn.00403320
mov eax, dword [0x41a844]
test eax, eax
je 0x401349
push 0
push eax
push 1
push ebx
call dword [sym.imp.USER32.dll_SetTimer]
test eax, eax
jne 0x401349
mov ecx, dword [0x41aa54]
call fcn.00401fc0
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x200]
xor ecx, esp
call fcn.00403856
add esp, 0x204
ret
mov ecx, dword [0x41aa54]
call fcn.00401fc0
lea ecx, [esp + 0xc]
push ecx
call fcn.004037e6
add esp, 4
mov ecx, 0x414
xor eax, eax
jmp 0x4011d0
mov edx, dword [eax + 0x41a640]
mov esi, dword [sym.imp.USER32.dll_IsWindow]
cmp edx, dword [eax + 0x41a228]
jne 0x401202
sub ecx, 4
add eax, 4
cmp ecx, 4
jae 0x4011d0
mov eax, dword [0x41aa54]
mov ecx, dword [eax + 4]
push ecx
call esi
test eax, eax
jne 0x401306
mov ecx, 0x40e200
lea eax, [esp + 0xc]
jmp 0x401210
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401236
test dx, dx
je 0x401232
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401236
add eax, 4
add ecx, 4
test dx, dx
jne 0x401210
xor eax, eax
jmp 0x40123b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4012d8
mov ecx, 0x41a228
mov eax, 0x41a640
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401276
test dx, dx
je 0x401272
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401276
add eax, 4
add ecx, 4
test dx, dx
jne 0x401250
xor eax, eax
jmp 0x40127b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4012a8
mov edx, dword [0x41aa54]
mov eax, dword [edx + 4]
push eax
call esi
test eax, eax
je 0x4012a8
mov ecx, dword [0x41a84c]
cmp ecx, dword [0x41a434]
jne 0x4012a8
mov edx, dword [0x41a844]
push 0
push edx
jmp 0x40131f
mov eax, dword [0x41a850]
mov ecx, dword [0x41a84c]
push eax
push 0x41a854
push ecx
mov ecx, dword [0x41aa54]
push 0x41a640
call fcn.00402fc0
mov eax, dword [0x41a844]
test eax, eax
je 0x401337
push 0
push eax
jmp 0x40131f
mov ecx, dword [0x41aa54]
call fcn.00401720
mov ecx, dword [0x41aa54]
call fcn.00401750
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x200]
xor ecx, esp
call fcn.00403856
add esp, 0x204
ret
mov edx, dword [0x41aa54]
mov eax, dword [edx + 4]
push eax
call esi
test eax, eax
je 0x401337
mov ecx, dword [0x41a844]
push 0
push ecx
push 1
push ebx
call dword [sym.imp.USER32.dll_SetTimer]
test eax, eax
jne 0x401337
mov ecx, dword [0x41aa54]
call fcn.00401720
mov edx, dword [0x41a840]
mov ecx, dword [0x41aa54]
push edx
call fcn.00403130
mov ecx, dword [esp + 0x20c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00403856
add esp, 0x204
ret