Function at 0x5d29f4
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov esi, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0xe0]
test byte [ebx + 0x1c], 8
jne 0x5d2a1d
call fcn.005bab00
cmp ebx, eax
jne 0x5d2a76
cmp esi, 2
jne 0x5d30b7
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4d], 0
jne 0x5d30b7
mov eax, dword [ebp - 4]
cmp byte [eax + 0x127], 0
je 0x5d2a50
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x114]
mov eax, dword [ebp - 4]
call fcn.005d7920
mov eax, dword [ebp - 4]
cmp byte [eax + 0x126], 0
je 0x5d30b7
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc8]
mov eax, dword [ebp - 4]
call fcn.005d8f70
jmp 0x5d30b7
mov eax, esi
cmp eax, 0x46
jg 0x5d2ab6
je 0x5d30a1
cmp eax, 0x15
jg 0x5d2a9f
je 0x5d2ec7
dec eax
je 0x5d2c14
sub eax, 5
je 0x5d2af3
jmp 0x5d30b7
sub eax, 0x1a
je 0x5d2e9b
sub eax, 2
je 0x5d2bca
jmp 0x5d30b7
cmp eax, 0x7e
jg 0x5d2ad8
je 0x5d2c96
sub eax, 0x47
je 0x5d3041
sub eax, 0xc
je 0x5d2ca3
jmp 0x5d30b7
sub eax, 0x112
je 0x5d2f4d
sub eax, 0x110
je 0x5d2e68
jmp 0x5d30b7
mov bx, word [ebp - 8]
test bx, bx
jne 0x5d2b2d
mov eax, dword [ebp + 8]
call fcn.00465f68
mov edx, dword [0x5c4598]
call fcn.00403f38
test al, al
je 0x5d2b2d
mov eax, dword [ebp + 8]
call fcn.00465f68
mov edi, eax
mov eax, edi
call fcn.005e1734
cmp eax, dword [ebp - 4]
je 0x5d30b7
test bx, bx
setne al
mov edx, dword [ebp - 4]
mov byte [edx + 0xe4], al
push ebp
mov ecx, dword [ebp + 8]
xor edx, edx
call fcn.005d29d0
pop ecx
mov eax, dword [ebp - 4]
cmp byte [eax + 0x140], 0
jne 0x5d30b7
mov eax, dword [ebp - 4]
cmp byte [eax + 0xe4], 0
je 0x5d30b7
call fcn.005bab00
test eax, eax
je 0x5d30b7
mov eax, dword [ebp - 4]
cmp byte [eax + 0xcd], 0
je 0x5d30b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xe0]
call fcn.0046fb3c
push eax
call sub.user32.dll_IsWindowEnabled
test eax, eax
jne 0x5d30b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xe0]
call fcn.0046fb3c
push eax
mov eax, dword [ebp - 8]
push eax
push esi
call fcn.005bab00
call fcn.0046fb3c
push eax
call sub.user32.dll_SendMessageA
jmp 0x5d30b7
cmp dword [ebp - 8], 0
jne 0x5d30b7
push ebp
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.005d29d0
pop ecx
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x11c]
test ebx, ebx
je 0x5d2c05
push 0
push 0
push 0x2a3
mov eax, dword [ebx + 0x20]
call fcn.0046fb3c
push eax
call sub.user32.dll_SendMessageA
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.005d1258
jmp 0x5d30b7
mov eax, dword [ebp - 4]
cmp dword [eax + 0x130], 0
je 0x5d30b7
mov eax, dword [ebp - 4]
call fcn.005d06d0
mov edi, eax
dec edi
test edi, edi
jl 0x5d2c49
inc edi
xor ebx, ebx
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.005d06bc
call fcn.0046fb18
inc ebx
dec edi
jne 0x5d2c36
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x130]
mov ebx, dword [eax + 8]
dec ebx
cmp ebx, 0
jl 0x5d2c78
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x130]
mov edx, ebx
call fcn.0041ff3c
mov dl, 1
call fcn.005da3a0
dec ebx
cmp ebx, 0xffffffff
jne 0x5d2c5b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x130]
call fcn.00403dac
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x130], edx
jmp 0x5d30b7
mov eax, dword [ebp - 4]
call fcn.005d3738
jmp 0x5d30b7
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4d], 0
jne 0x5d30b7
mov edi, dword [ebp + 8]
cmp dword [edi + 4], 1
jne 0x5d30b7
xor esi, esi
call fcn.005c89a4
test eax, eax
je 0x5d2d7c
call fcn.005c89a4
mov ebx, eax
mov esi, dword [ebx + 0x25c]
test esi, esi
je 0x5d2d09
mov eax, esi
call fcn.005f0e10
cmp dword [eax + 0x58], 0
jne 0x5d2dc0
jmp 0x5d2d09
mov esi, dword [edi + 0x2c4]
mov ebx, dword [ebx + 0x254]
mov eax, esi
call fcn.005f0e10
cmp dword [eax + 0x58], 0
jne 0x5d2d14
mov edi, ebx
cmp dword [edi + 0x254], 0
jne 0x5d2cf0
test esi, esi
je 0x5d2d29
mov eax, esi
call fcn.005f0e10
cmp dword [eax + 0x58], 0
jne 0x5d2dc0
mov eax, dword [ebp - 4]
call fcn.005d6700
mov ebx, dword [ebx + 0x158]
test ebx, ebx
je 0x5d30b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xe0]
test byte [eax + 0x228], 8
je 0x5d2d69
mov eax, dword [0x6bfd90]
mov eax, dword [eax]
mov ecx, ebx
mov edx, 8
call fcn.00489898
jmp 0x5d30b7
mov eax, dword [0x6bfd90]
mov eax, dword [eax]
mov edx, ebx
call fcn.00489830
jmp 0x5d30b7
mov eax, dword [edi + 0xc]
call fcn.00465f68
mov ebx, eax
mov eax, ebx
mov edx, dword [0x5c4598]
call fcn.00403f38
test al, al
je 0x5d2dc0
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [edi + 0x18]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
mov eax, ebx
call fcn.0046fb3c
push eax
call sub.user32.dll_ScreenToClient
lea edx, [ebp - 0x10]
mov eax, ebx
call fcn.005e3344
mov esi, eax
test esi, esi
je 0x5d30b7
mov eax, dword [esi + 0x18]
lea edi, [eax + 0x1c]
mov eax, dword [edi]
add eax, dword [edi + 8]
sar eax, 1
jns 0x5d2dda
adc eax, 0
lea ecx, [ebp - 0x10]
mov edx, dword [edi + 0xc]
call fcn.0041e758
lea eax, [ebp - 0x10]
push eax
mov eax, ebx
call fcn.0046fb3c
push eax
call sub.user32.dll_ClientToScreen
mov eax, esi
call fcn.005f0e10
mov ebx, dword [eax + 0x58]
mov eax, dword [ebp - 4]
call fcn.005d6700
test ebx, ebx
je 0x5d30b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xe0]
test byte [eax + 0x228], 8
je 0x5d2e55
lea eax, [ebp - 0x10]
call fcn.00408530
mov ecx, eax
mov eax, dword [0x6bfd90]
mov eax, dword [eax]
mov edx, 0xd
call fcn.00489898
mov eax, dword [0x6bfd90]
mov eax, dword [eax]
mov ecx, ebx
mov edx, 8
call fcn.00489898
jmp 0x5d30b7
mov eax, dword [0x6bfd90]
mov eax, dword [eax]
mov edx, ebx
call fcn.00489830
jmp 0x5d30b7
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0xe0]
cmp byte [ebx + 0x22f], 1
jne 0x5d30b7
push ebp
mov eax, ebx
call fcn.0046fb3c
cmp eax, dword [ebp + 8]
sete al
xor ecx, ecx
xor edx, edx
call fcn.005d29d0
pop ecx
jmp 0x5d30b7
mov eax, dword [ebp - 8]
sub eax, 0x2a
je 0x5d2ead
sub eax, 5
je 0x5d2eba
jmp 0x5d30b7
mov eax, dword [ebp - 4]
call fcn.005d434c
jmp 0x5d30b7
mov eax, dword [ebp - 4]
call fcn.005d3738
jmp 0x5d30b7
call fcn.005c9120
call fcn.005c9170
mov eax, dword [ebp - 4]
call fcn.005d40e4
mov eax, dword [ebp - 4]
call fcn.005d4104
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xe0]
cmp byte [eax + 0x22f], 2
jne 0x5d30b7
mov eax, dword [0x6c25fc]
call fcn.005d9780
mov edi, eax
dec edi
test edi, edi
jl 0x5d30b7
inc edi
xor ebx, ebx
mov edx, ebx
mov eax, dword [0x6c25fc]
call fcn.005d9754
mov eax, dword [eax + 0xe0]
cmp byte [eax + 0x22f], 1
jne 0x5d2f44
mov eax, dword [ebp + 8]
push eax
mov edx, ebx
mov eax, dword [0x6c25fc]
call fcn.005d9754
mov ecx, dword [ebp - 8]
mov edx, esi
call fcn.005d29f4
inc ebx
dec edi
jne 0x5d2f0f
jmp 0x5d30b7
cmp dword [ebp - 8], 0xf060
jne 0x5d2f84
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4d], 0
je 0x5d2f84
call fcn.005c89a4
test eax, eax
je 0x5d2f84
call fcn.005c89a4
call fcn.005e1734
cmp eax, dword [ebp - 4]
jne 0x5d2f84
call fcn.005c89a4
mov edx, dword [eax]
call dword [edx + 0x178]
cmp dword [ebp - 8], 0xf020
je 0x5d2fac
cmp dword [ebp - 8], 0xf030
je 0x5d2fac
cmp dword [ebp - 8], 0xf120
je 0x5d2fac
cmp dword [ebp - 8], 0xf060
jne 0x5d30b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
call fcn.00421618
mov edi, eax
dec edi
test edi, edi
jl 0x5d30b7
inc edi
xor ebx, ebx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, ebx
call fcn.005db1b0
mov esi, eax
cmp byte [esi + 0x85], 0
je 0x5d303b
mov eax, esi
call fcn.005d9a14
test eax, eax
je 0x5d303b
mov eax, esi
call fcn.005d9a30
test al, al
jne 0x5d303b
mov eax, esi
call fcn.005d9a14
mov esi, eax
cmp dword [ebp - 8], 0xf020
je 0x5d300e
cmp dword [ebp - 8], 0xf060
jne 0x5d301f
push 0
mov eax, esi
call fcn.0046fb3c
push eax
call sub.user32.dll_ShowWindow
jmp 0x5d303b
push 4
mov eax, esi
call fcn.0046fb3c
push eax
call sub.user32.dll_ShowWindow
mov eax, esi
call fcn.0046fb3c
push eax
call sub.user32.dll_UpdateWindow
inc ebx
dec edi
jne 0x5d2fc5
jmp 0x5d30b7
mov eax, dword [ebp - 4]
cmp byte [eax + 0xcd], 0
je 0x5d30b7
call fcn.005bab00
test eax, eax
je 0x5d30b7
call fcn.005bab00
mov ebx, dword [ebp + 8]
mov edx, ebx
call fcn.005bf3c8
call fcn.005b8300
test eax, eax
je 0x5d30b7
mov eax, dword [ebx + 0x18]
test al, 0x40
je 0x5d3089
push 8
call fcn.005b8300
call fcn.0046fb3c
push eax
call sub.user32.dll_ShowWindow
jmp 0x5d30b7
test al, 0x80
je 0x5d30b7
push 0
call fcn.005b8300
call fcn.0046fb3c
push eax
call sub.user32.dll_ShowWindow
jmp 0x5d30b7
mov eax, dword [ebp + 8]
test byte [eax + 0x18], 0x80
je 0x5d30b7
push ebp
xor ecx, ecx
mov dl, 1
xor eax, eax
call fcn.005d29d0
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4