Function at 0x508740
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x551815
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x5d3b14]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
cmp dword [ebp + 0x1c], 0
mov esi, dword [ebp + 0x18]
jne 0x50899d
mov edi, dword [ebp + 0xc]
cmp edi, 0x110
jne 0x5087c1
mov eax, dword [ebx + 0x14]
lea ecx, [ebx - 0x48]
push dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
push edx
mov dword [eax + 0x20], 1
call fcn.004f6ad0
mov dword [esi], eax
mov eax, dword [ebx + 0x14]
cmp dword [eax + 0x20], 0
je 0x5088a9
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp edi, 0x14
jne 0x508817
mov eax, dword [ebx + 0x14]
lea ecx, [ebx - 0x48]
mov edx, dword [ebp + 0x10]
push ecx
mov dword [ebp - 0x10], esp
mov dword [eax + 0x20], 1
mov eax, esp
mov dword [eax], edx
mov dword [ebp - 4], 0
mov dword [ebp - 4], 0xffffffff
call fcn.004f6a10
mov dword [esi], eax
mov eax, dword [ebx + 0x14]
cmp dword [eax + 0x20], 0
je 0x5088a9
lea eax, [edi - 0x13]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp edi, 5
jne 0x508864
mov eax, dword [ebx + 0x14]
lea ecx, [ebx - 0x48]
mov dword [eax + 0x20], 1
mov eax, dword [ebp + 0x14]
movsx edx, ax
shr eax, 0x10
cwde
push eax
push edx
mov edx, dword [ebp + 0x10]
push edx
call fcn.004f6d50
mov dword [esi], 0
mov eax, dword [ebx + 0x14]
cmp dword [eax + 0x20], 0
je 0x5088a9
lea eax, [edi - 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp edi, 0x138
jne 0x5088a9
mov eax, dword [ebx + 0x14]
lea ecx, [ebx - 0x48]
push dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
push ecx
mov dword [eax + 0x20], 1
mov eax, esp
mov dword [ebp - 0x10], esp
mov dword [eax], edx
mov dword [ebp - 4], 1
mov dword [ebp - 4], 0xffffffff
call fcn.004f6930
mov dword [esi], eax
mov eax, dword [ebx + 0x14]
cmp dword [eax + 0x20], 0
jne 0x508969
lea esi, [ebx + 0x34]
cmp edi, 5
jne 0x508940
cmp byte [esi + 0x1c], 0
je 0x5088f7
mov ecx, 4
lea eax, [ebx - 0x44]
test esi, esi
push 0xe801
cmove eax, ecx
push dword [eax]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ecx, dword [ebp + 0x10]
cmp ecx, 2
jne 0x5088e8
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x5088ff
test ecx, ecx
jne 0x5088fa
push 5
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x5088ff
mov ecx, dword [ebp + 0x10]
cmp ecx, 1
je 0x508960
mov ecx, dword [ebp + 0x14]
mov eax, ecx
shr eax, 0x10
test esi, esi
cwde
push eax
movsx eax, cx
push eax
mov eax, 0x7c
cmove esi, eax
mov ecx, esi
call fcn.00506950
mov eax, dword [ebp + 0x18]
mov dword [eax], 0
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp edi, 0x24
jne 0x508982
cmp dword [esi + 0x14], 0xffffffff
je 0x508960
cmp dword [esi + 0x18], 0xffffffff
je 0x508960
mov edx, dword [ebp + 0x14]
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x18]
mov dword [edx + 0x18], eax
mov dword [edx + 0x1c], ecx
mov eax, dword [ebp + 0x18]
mov dword [eax], 0
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
mov eax, dword [ebp + 0x18]
mov ecx, ebx
push 0
push eax
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push edi
push dword [ebp + 8]
call fcn.004c0c00
test eax, eax
jne 0x508969
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18