Function at 0x4e3590
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov eax, dword [0x5b7de4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov ebx, ecx
push edi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetParent]
push eax
lea ecx, [ebx + 4]
call fcn.00411cd0
push 0x574ea8
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0
push 0
push 0x31
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebx + 0x198], eax
lea esi, [ebx + 0xf0]
mov eax, dword [ebx + 4]
mov dword [ebp - 0x1c], eax
call fcn.00424860
cmp dword [eax + 0x30], 0
jne 0x4e35fd
call fcn.00424860
mov dword [eax + 0x30], str.ToolbarWindow32
call fcn.00424860
lea ecx, [esi + 0x40]
push ecx
push eax
push 0x5c8998
push 0x5b7120
call fcn.00420c70
movzx eax, ax
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 0x34]
test eax, eax
jne 0x4e363c
call fcn.00503a66
mov dword [esi + 0x34], eax
test eax, eax
jne 0x4e363c
push 0xe
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x4e36d6
push 0
push 0
push eax
call fcn.00503b65
cmp word [ebp - 0x18], 0
je 0x4e36d6
lea eax, [esi + 0x28]
test eax, eax
je 0x4e3a94
test esi, esi
je 0x4e3a94
mov dword [eax], esi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push 0x5b7124
mov dword [esi + 0x2c], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [0x5b713c]
lea ecx, [esi + 0x28]
mov dword [ecx + 8], eax
push 0x5b7124
mov dword [0x5b713c], ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [0x5b7150]
mov eax, dword [0x5b7158]
mov edx, dword [0x5b714c]
sub eax, ecx
push 0
push dword [0x5c899c]
push esi
push dword [ebp - 0x1c]
push eax
mov eax, dword [0x5b7154]
sub eax, edx
push eax
mov eax, dword [ebp - 0x18]
push ecx
push edx
push 0x5600184c
push 0
movzx eax, ax
push eax
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
push 0
push dword [ebx + 0xf4]
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x44c
push dword [ebx + 4]
xorps xmm0, xmm0
movups xmmword [ebp - 0x14], xmm0
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push 0
mov esi, eax
push 0xb
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [ebp - 0x14]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov esi, dword [sym.imp.USER32.dll_ScreenToClient]
lea eax, [ebp - 0x14]
push eax
push dword [ebx + 4]
call esi
test eax, eax
je 0x4e372f
lea eax, [ebp - 0xc]
push eax
push dword [ebx + 4]
call esi
mov eax, dword [ebx + 4]
lea esi, [ebx + 0x68]
mov dword [ebp - 0x4c], eax
lea eax, [esi + 0x20]
push eax
push 0x5b78c0
push 0x5c8998
push 0x5b7120
call fcn.00420c70
movzx eax, ax
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 0x14]
test eax, eax
jne 0x4e3a00
call fcn.00503a66
mov dword [esi + 0x14], eax
test eax, eax
jne 0x4e3a00
push 0xe
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x10]
sub eax, edx
mov ecx, dword [ebp - 0x14]
push 0
mov dword [ebx + 0xd8], 0
push dword [0x5c899c]
push 0x73
push dword [ebx + 0x6c]
push eax
mov eax, dword [ebp - 0xc]
sub eax, ecx
push eax
push edx
push ecx
push 0x5600100d
push 0
push str.SysListView32
push 0x200
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0x21
push 0
push 0x1036
push eax
mov dword [ebx + 0xe8], eax
call esi
push 0
push 0
push 0x31
push dword [ebx + 4]
call esi
push 1
push eax
push 0x30
push dword [ebx + 0xe8]
call esi
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x10]
sub eax, edx
mov ecx, dword [ebp - 0x14]
push 0
push dword [0x5c899c]
push 0x75
push dword [ebx + 0x6c]
push eax
mov eax, dword [ebp - 0xc]
sub eax, ecx
push eax
push edx
push ecx
push 0x5600100d
push 0
push str.SysListView32
push 0x200
call dword [sym.imp.USER32.dll_CreateWindowExA]
push 0x21
push 0
push 0x1036
push eax
mov dword [ebx + 0xec], eax
call esi
push 0
push 0
push 0x31
push dword [ebx + 4]
call esi
push 1
push eax
push 0x30
push dword [ebx + 0xec]
call esi
mov ecx, dword [ebx + 0xec]
mov eax, dword [ebx + 0xe8]
mov dword [ebx + 0x94], ecx
lea ecx, [ebx + 0x8c]
mov dword [ebx + 0x90], eax
call fcn.004535e0
push 1
push 0xe1
lea ecx, [ebx + 0x8c]
call fcn.004525e0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x38], 0
push eax
push 0
push 0x101b
push dword [ebx + 0xe8]
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
movlpd qword [ebp - 0x30], xmm0
movlpd qword [ebp - 0x28], xmm0
mov dword [ebp - 0x3c], 0x571e78
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xaa
mov dword [ebp - 0x48], 0xf
mov dword [ebp - 0x34], 0
call esi
lea eax, [ebp - 0x48]
mov dword [ebp - 0x38], 0
push eax
push 0
push 0x101b
push dword [ebx + 0xec]
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
movlpd qword [ebp - 0x30], xmm0
movlpd qword [ebp - 0x28], xmm0
mov dword [ebp - 0x3c], 0x576c5c
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0x3c
mov dword [ebp - 0x48], 0xf
mov dword [ebp - 0x34], 0
call esi
lea eax, [ebp - 0x48]
mov dword [ebp - 0x38], 0
push eax
push 1
push 0x101b
push dword [ebx + 0xec]
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
movlpd qword [ebp - 0x30], xmm0
movlpd qword [ebp - 0x28], xmm0
mov dword [ebp - 0x3c], 0x571e78
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0x12c
mov dword [ebp - 0x48], 0xf
mov dword [ebp - 0x34], 0
call esi
lea eax, [ebp - 0x48]
mov dword [ebp - 0x38], 0
push eax
push 2
push 0x101b
push dword [ebx + 0xec]
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
movlpd qword [ebp - 0x30], xmm0
movlpd qword [ebp - 0x28], xmm0
mov dword [ebp - 0x3c], 0x575b88
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0x3c
mov dword [ebp - 0x48], 0xf
mov dword [ebp - 0x34], 0
call esi
mov ecx, ebx
call fcn.004e1e10
push 0x2000000
push 1
push 1
lea ecx, [ebx + 0x48]
call fcn.004e0de0
push 1
push 0
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
pop ebx
xor ecx, ebp
call fcn.005189ad
mov esp, ebp
pop ebp
ret 0x10
push 0
push 0
push eax
call fcn.00503b65
cmp word [ebp - 0x18], 0
je 0x4e3779
lea eax, [esi + 8]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x4e3a94
test esi, esi
je 0x4e3a94
mov dword [eax], esi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov esi, dword [ebp - 0x1c]
push 0x5b7124
mov dword [esi + 4], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [0x5b713c]
mov dword [esi + 8], eax
push 0x5b7124
mov dword [0x5b713c], esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x10]
sub eax, edx
mov ecx, dword [ebp - 0x14]
push 0
push dword [0x5c899c]
push 0x452
push dword [ebp - 0x4c]
push eax
mov eax, dword [ebp - 0xc]
sub eax, ecx
push eax
mov eax, dword [ebp - 0x18]
push edx
push ecx
push 0x56000000
push 0
movzx eax, ax
push eax
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
jmp 0x4e3779
push 1
push 0xc0000005
call fcn.0041a790
int3