Function at 0x4655e0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffac
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x1c], edx
mov ebx, eax
xor eax, eax
push ebp
push 0x465aff
push dword fs:[eax]
mov dword fs:[eax], esp
test bl, bl
jne 0x46562b
push 1
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
push eax
call sub.user32.dll_ShowWindow
push ebp
mov eax, 0x66
call fcn.004655a0
pop ecx
push ebp
mov eax, 0x67
call fcn.004655a0
pop ecx
push ebp
mov eax, 0x68
call fcn.004655a0
pop ecx
push ebp
mov eax, 0x69
call fcn.004655a0
pop ecx
push ebp
mov eax, 0xbb8
call fcn.004655a0
pop ecx
push ebp
mov eax, 0xfa0
call fcn.004655a0
pop ecx
push ebp
mov eax, 0x1388
call fcn.004655a0
pop ecx
push 0xfffffffffffffff0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
push eax
call sub.user32.dll_GetWindowLongA
mov esi, 0x50000
mov edx, dword [0x5d08a0]
test byte [edx + 0x318], 0x40
jne 0x4656a7
or esi, 0x80000
test bl, bl
je 0x4656af
or eax, esi
jmp 0x4656b6
or edx, 0xffffffff
sub edx, esi
and eax, edx
push eax
push 0xfffffffffffffff0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
push eax
call sub.user32.dll_SetWindowLongA
lea ecx, [ebp - 0x1c]
mov dl, 0x14
mov eax, dword [0x5d08a0]
call fcn.0042f9f4
test bl, bl
je 0x465794
lea eax, [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov edx, 0x465b18
call fcn.00404c98
lea ecx, [ebp - 0x24]
mov dl, 4
mov eax, dword [0x5d08a0]
call fcn.0042f9f4
mov eax, dword [ebp - 0x24]
call fcn.00404e44
push eax
push 0
push 0xc
push 0x65
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
push eax
call sub.user32.dll_GetDlgItem
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebp + 8]
push eax
call fcn.00465120
pop ecx
mov eax, dword [ebp + 8]
push eax
mov eax, dword [0x5d0dc0]
call fcn.00465568
pop ecx
push 8
push 0x3e8
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
push eax
call sub.user32.dll_GetDlgItem
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [ebp + 8]
push eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x28]
mov edx, dword [ebp + 8]
add eax, dword [edx - 0x20]
add eax, dword [0x5d0e10]
push eax
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax - 0x24]
mov eax, dword [ebp + 8]
add ecx, dword [eax - 0x1c]
mov eax, dword [ebp + 8]
mov edx, dword [eax - 0x28]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x24]
call fcn.0041f79c
lea eax, [ebp - 0x34]
call fcn.004650d8
pop ecx
jmp 0x465ab3
lea eax, [ebp - 0x1c]
mov edx, 0x465b24
call fcn.00404c54
lea eax, [ebp - 0x38]
call fcn.004631fc
mov eax, dword [ebp - 0x38]
call fcn.00404e44
push eax
push 0
push 0xc
push 0x65
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
push eax
call sub.user32.dll_GetDlgItem
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
push eax
call sub.user32.dll_GetWindowDC
mov dword [ebp - 0xc], eax
mov eax, dword [0x5d0bd0]
push eax
mov eax, dword [ebp - 0xc]
push eax
call sub.gdi32.dll_SelectObject
xor eax, eax
mov dword [ebp - 0x14], eax
xor eax, eax
mov dword [ebp - 0x18], eax
push 0x20
call sub.user32.dll_GetSystemMetrics
dec eax
add eax, eax
add eax, 0x3c
mov dword [ebp - 0x10], eax
mov dl, 1
mov eax, dword [0x41eb20]
call fcn.00403a48
mov dword [ebp - 0x20], eax
xor edx, edx
push ebp
push 0x465935
push dword fs:[edx]
mov dword fs:[edx], esp
lea eax, [ebp - 0x3c]
call fcn.004631fc
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
lea ecx, [ebp - 0x44]
mov dl, 0x16
mov eax, dword [0x5d08a0]
call fcn.0042f9f4
push dword [ebp - 0x44]
push 0x465b30
lea ecx, [ebp - 0x48]
mov dl, 0x18
mov eax, dword [0x5d08a0]
call fcn.0042f9f4
push dword [ebp - 0x48]
lea eax, [ebp - 0x40]
mov edx, 3
call fcn.00404d0c
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx + 0x14]
mov esi, eax
dec esi
test esi, esi
jl 0x46591f
inc esi
xor ebx, ebx
lea ecx, [ebp - 0x4c]
mov edx, ebx
mov eax, dword [ebp - 0x20]
mov edi, dword [eax]
call dword [edi + 0xc]
cmp dword [ebp - 0x4c], 0
jne 0x4658ab
mov ecx, 0x465b40
mov edx, ebx
mov eax, dword [ebp - 0x20]
mov edi, dword [eax]
call dword [edi + 0x20]
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 0x50]
mov edx, ebx
mov eax, dword [ebp - 0x20]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x50]
call fcn.00404c4c
push eax
lea ecx, [ebp - 0x54]
mov edx, ebx
mov eax, dword [ebp - 0x20]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x54]
call fcn.00404e44
push eax
mov eax, dword [ebp - 0xc]
push eax
call sub.gdi32.dll_GetTextExtentPoint32A
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x14]
jle 0x465911
add eax, 0x10
mov dword [ebp - 0x14], eax
mov ecx, 0x280
sub ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x14]
jge 0x465911
mov eax, dword [ebp - 0x14]
sub eax, ecx
cdq
idiv ecx
inc eax
imul dword [ebp - 4]
add dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 4]
add dword [ebp - 0x18], eax
inc ebx
dec esi
jne 0x465889
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46593c
mov eax, dword [ebp - 0x20]
call fcn.00403a78
ret
mov eax, dword [ebp - 0x1c]
call fcn.00404e44
push eax
push 0
push 0xc
push 0x68
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
push eax
call sub.user32.dll_GetDlgItem
push eax
call sub.user32.dll_SendMessageA
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x465b06
lea eax, [ebp - 0x54]
mov edx, 8
call fcn.0040498c
lea eax, [ebp - 0x24]
call fcn.00404968
lea eax, [ebp - 0x1c]
call fcn.00404968
ret