Function at 0x43f8fc
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xfffff8d4
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x16c0], edx
mov dword [ebp - 0x16bc], edx
mov dword [ebp - 0x15b8], edx
mov dword [ebp - 0x1598], edx
mov esi, eax
lea edi, [ebp - 4]
xor eax, eax
push ebp
push 0x43feda
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [esi + 0x43b]
call fcn.0040f1e4
mov ecx, eax
mov edx, edi
mov eax, dword [esi + 0x43b]
call fcn.0040f194
xor edx, edx
mov eax, dword [edi]
call fcn.00418c1c
mov byte [ebp - 0x11f], 0
mov eax, dword [0x47b37c]
mov eax, dword [eax]
cmp byte [eax], 0
je 0x43f9be
mov eax, dword [0x47b37c]
mov eax, dword [eax]
call fcn.004091fc
cmp eax, 8
ja 0x43f9be
lea edx, [ebp - 0x1598]
mov eax, dword [0x47b37c]
mov eax, dword [eax]
call fcn.00409400
mov edx, dword [ebp - 0x1598]
lea eax, [ebp - 0x1594]
mov ecx, 0xff
call fcn.00404e90
lea edx, [ebp - 0x1594]
lea eax, [ebp - 0x11f]
mov cl, 0x12
call fcn.00403044
cmp byte [ebp - 0x11f], 0
je 0x43fea6
mov edx, 0x43fee8
lea eax, [ebp - 0x15b4]
call fcn.00403038
lea edx, [ebp - 0x11f]
lea eax, [ebp - 0x15b4]
mov cl, 0x1a
call fcn.00403008
lea edx, [ebp - 0x15b4]
lea eax, [ebp - 0x10c]
call fcn.00403038
mov byte [ebp - 0x33f], 0
push 0
push 0x43fef4
push 0x43fef4
push 0x43fef4
mov ecx, dword [0x47b404]
xor edx, edx
lea eax, [ebp - 0x10c]
call fcn.00424674
mov ebx, eax
test ebx, ebx
jne 0x43fa44
mov eax, dword [0x47b4c0]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
call fcn.00424d90
mov ebx, eax
test ebx, ebx
jle 0x43fa92
lea ecx, [ebp - 0x16b8]
mov eax, dword [0x47b404]
mov edx, ebx
call fcn.00423e94
lea eax, [ebp - 0x16b8]
lea edx, [ebp - 0x1594]
call fcn.0041c150
lea edx, [ebp - 0x1594]
lea eax, [ebp - 0x15b8]
call fcn.00404e58
mov edx, dword [ebp - 0x15b8]
lea eax, [ebp - 0x33f]
call fcn.00409294
jmp 0x43fe83
lea edx, [ebp - 0x10c]
mov eax, dword [0x47b404]
call fcn.00424e78
cmp byte [ebp - 0x10c], 1
jbe 0x43faf5
cmp byte [ebp - 0x10b], 0x45
jne 0x43faf5
cmp byte [ebp - 0x10a], 0x2d
jne 0x43faf5
lea edx, [ebp - 0x1594]
lea eax, [ebp - 0x10c]
call fcn.0041c150
lea edx, [ebp - 0x1594]
lea eax, [ebp - 0x16bc]
call fcn.00404e58
mov edx, dword [ebp - 0x16bc]
lea eax, [ebp - 0x33f]
call fcn.00409294
jmp 0x43fe83
mov edx, dword [0x47b378]
lea eax, [ebp - 0x16f4]
call fcn.00403038
mov edx, dword [0x47b404]
lea eax, [ebp - 0x16f4]
mov cl, 0x33
call fcn.00403008
lea edx, [ebp - 0x16f4]
lea eax, [ebp - 0x172c]
call fcn.00403038
mov edx, 0x43fef8
lea eax, [ebp - 0x172c]
mov cl, 0x37
call fcn.00403008
lea edx, [ebp - 0x172c]
lea eax, [ebp - 0x16c0]
call fcn.00404e58
mov edx, dword [ebp - 0x16c0]
lea eax, [ebp - 0x1494]
call fcn.00402e0c
mov edx, 1
lea eax, [ebp - 0x1494]
call fcn.00403548
call fcn.00402874
test eax, eax
je 0x43fb8c
lea eax, [ebp - 0x33f]
mov edx, 0x43ff08
call fcn.00409294
jmp 0x43fe83
push 0
push 0
push 0
push 0
mov eax, dword [esi + 0xc]
push eax
push 0
mov eax, dword [0x47c664]
push eax
push 0
mov eax, 0x43ff2c
mov ecx, 0x80800110
xor edx, edx
call fcn.004075d0
mov dword [0x4bf400], eax
push 0x43f774
push 0xfffffffffffffffc
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SetWindowLongA
mov dword [0x4bf404], eax
mov byte [ebp - 0x10c], 0
xor eax, eax
mov dword [ebp - 0x1347], eax
xor eax, eax
mov dword [ebp - 0x1343], eax
xor ebx, ebx
lea edx, [ebp - 0x1347]
lea eax, [ebp - 0x1494]
call fcn.004355b0
mov ebx, eax
call fcn.00402874
test eax, eax
je 0x43fc50
lea eax, [ebp - 0x33f]
mov edx, 0x43ff40
call fcn.00409294
push 0
push 0
push 0x184
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SendMessageA
push 0
push 0
push 0x10
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_PostMessageA
lea eax, [ebp - 0x1494]
call fcn.00402fb0
call fcn.00402874
test eax, eax
jmp 0x43fe83
test ebx, ebx
jl 0x43fc73
mov eax, dword [0x47b1dc]
mov dword [edi], eax
jmp 0x43fc5f
inc dword [edi]
mov eax, dword [edi]
cmp byte [eax], 0x20
je 0x43fc5d
lea eax, [ebp - 0x33f]
mov edx, dword [edi]
call fcn.004092b8
test ebx, ebx
jge 0x43fbe8
lea eax, [ebp - 0x33f]
call fcn.004091fc
inc eax
call fcn.00402688
mov dword [edi], eax
lea edx, [ebp - 0x33f]
mov eax, dword [edi]
call fcn.00409238
mov byte [ebp - 0x33f], 0
mov eax, dword [edi]
push eax
push 0
push 0x180
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [edi]
mov dword [0x4bf40c], eax
lea eax, [ebp - 0x1494]
call fcn.00402fb0
call fcn.00402874
test eax, eax
mov eax, dword [esi + 0x43b]
call fcn.0040f1e4
mov edx, eax
mov eax, dword [esi + 0x43b]
call fcn.0040f204
lea eax, [ebp - 0x13f]
push eax
mov ebx, dword [esi + 0x43b]
mov eax, ebx
call fcn.0040f1e4
push eax
push 0x198
mov eax, dword [ebx + 0xc]
push eax
call sub.user32.dll_SendMessageA
lea eax, [ebp - 0x12f]
push eax
mov eax, dword [esi + 0x43b]
mov eax, dword [eax + 0xc]
push eax
call sub.user32.dll_GetClientRect
mov ecx, dword [0x47b39c]
mov eax, dword [ebp - 0x127]
sub eax, dword [ebp - 0x12f]
mov edx, dword [0x4bf40c]
call fcn.004206a0
mov ebx, eax
xor edx, edx
mov eax, ebx
call fcn.004074f8
push eax
push 0
push 0x1a0
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SendMessageA
push 6
call sub.user32.dll_GetSystemMetrics
add eax, eax
add ebx, eax
mov eax, dword [ebp - 0x12f]
sub dword [ebp - 0x127], eax
mov eax, dword [ebp - 0x123]
mov edi, dword [ebp - 0x12b]
sub eax, edi
mov edx, dword [ebp - 0x133]
sub eax, edx
inc eax
cmp ebx, eax
jle 0x43fddb
mov ecx, dword [ebp - 0x13b]
sub ecx, edi
cmp eax, ecx
jge 0x43fdca
mov eax, dword [ebp - 0x13b]
sub eax, dword [ebp - 0x12b]
mov dword [ebp - 0x123], eax
cmp ebx, eax
jge 0x43fdb6
mov dword [ebp - 0x123], ebx
mov eax, dword [ebp - 0x13b]
sub eax, dword [ebp - 0x123]
mov dword [ebp - 0x12b], eax
jmp 0x43fde8
mov eax, edx
dec eax
mov dword [ebp - 0x12b], eax
sub dword [ebp - 0x123], eax
jmp 0x43fde8
dec edx
mov dword [ebp - 0x12b], edx
mov dword [ebp - 0x123], ebx
mov eax, dword [ebp - 0x12f]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x12b]
mov dword [ebp - 8], eax
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esi + 0x43b]
mov eax, dword [eax + 0xc]
push eax
call sub.user32.dll_ClientToScreen
push 0xffffffffffffffff
mov eax, dword [ebp - 0x123]
push eax
mov eax, dword [ebp - 0x127]
push eax
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_MoveWindow
push 0
push 0
push 0x186
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SendMessageA
push 5
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [esi + 0x53]
mov dword [0x4bf408], eax
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SetFocus
push 0
push 0
push 0x1015
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_PostMessageA
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 0xc]
mov dword [0x4bf400], eax
cmp byte [ebp - 0x33f], 0
je 0x43fea6
push 0
mov eax, dword [0x47b5cc]
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x33f]
push eax
mov eax, dword [esi + 0xc]
push eax
call sub.user32.dll_MessageBoxA_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x43fee1
lea eax, [ebp - 0x16c0]
mov edx, 2
call fcn.00404c18
lea eax, [ebp - 0x15b8]
call fcn.00404bf4
lea eax, [ebp - 0x1598]
call fcn.00404bf4
ret