Function at 0x4380f0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49a7cc
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x4c100c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], ecx
cmp dword [0x4c51b8], 0x4c
jl 0x438150
push 0x4c51bc
call fcn.004478d0
mov ebx, dword [0x4c51b4]
add esp, 4
test ebx, ebx
je 0x438142
mov eax, dword [ebx]
mov dword [0x4c51b4], eax
mov dword [0x4c51bc], 1
test ebx, ebx
jne 0x43816b
push 0x4c
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x4383a7
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], 0
push pe_nt_image_headers32
call fcn.00477b22
mov edi, eax
mov dword [ebp - 0x18], edi
mov byte [ebp - 4], 1
lea ecx, [edi + 8]
lea esi, [edi + 4]
mov dword [ebp - 0x1c], ecx
mov dword [esi], 0
mov dword [ecx + 0xc], 0
mov byte [ebp - 4], 3
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
mov byte [ebp - 4], 4
mov eax, dword [sym.imp.USER32.dll_DefWindowProcW]
mov dword [edi + 0x20], eax
mov byte [ebp - 4], 6
lea eax, [edi + 0x90]
push 0x30
mov dword [edi], vtable.CVolSupperButton.0
mov dword [edi + 0x80], 0
push 0
push eax
mov dword [edi + 0x38], 0
mov dword [edi + 0x44], 0
mov dword [edi + 0x48], 0
mov dword [edi + 0x4c], 0
mov dword [edi + 0x40], 0
call fcn.00479200
add esp, 0x10
mov dword [edi + 0x3c], 1
mov ecx, edi
mov dword [edi + 0x84], 1
mov dword [edi + 0x5c], 1
mov dword [edi + 0x58], 0
mov dword [edi + 0x30], 1
mov dword [edi + 0x34], 1
mov dword [edi + 0x60], 0
mov dword [edi + 0x50], 0
mov dword [edi + 0x8c], 0xf
mov dword [edi + 0x54], 0
mov dword [edi + 0x88], 0
mov dword [edi + 0x64], 1
call fcn.0044cbc0
xorps xmm0, xmm0
mov dword [edi + 0x80], 0
mov dword [edi + 0x28], 3
mov dword [edi + 0x2c], 3
mov dword [edi + 0xc0], 0
movq qword [edi + 0xc4], xmm0
mov byte [ebp - 4], 7
mov dword [edi], vtable.CVWnd_SupperButton.0
mov dword [edi + 0xcc], 0
mov dword [edi + 0xd0], 0xffffffff
mov dword [edi + 0xd4], vtable.CVolWindowProcFilters.0
mov dword [edi + 0xd8], 0
mov byte [ebp - 4], 8
lea ecx, [edi + 0xfc]
call fcn.00405e70
mov byte [ebp - 4], 9
mov dword [edi + 0xe0], 0
mov dword [edi + 0xe4], 0
mov dword [edi + 0xe8], 0
mov dword [edi + 0xec], 0
mov dword [edi + 0xf0], 0xff000000
mov dword [edi + 0xf4], 0xff000000
mov dword [edi + 0xf8], 0xff000000
mov byte [ebp - 4], 0
mov dword [ebx], vtable.CRefObject.0
mov dword [ebx + 4], 1
mov byte [ebp - 4], 0xa
lea ecx, [ebx + 8]
mov dword [ebx], vtable.CWtlWndObject.0
call fcn.00405e70
mov byte [ebp - 4], 0xb
mov dword [ebx + 0x44], esi
mov dword [ebx + 0x34], 0x14000000
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x3c], 0
mov dword [ebx + 0x40], 0
mov byte [ebp - 4], 0xc
mov dword [ebx], vtable.CWtlWndObjectImpl_class_CVWnd_SupperButton_.0
mov dword [ebx + 0x48], edi
mov dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x10]
or dword [ebx + 0x34], 0x12000
mov ecx, dword [esi + 0xc]
test ecx, ecx
je 0x438392
mov eax, dword [ecx]
call dword [eax + 0x20]
mov dword [esi + 0xc], ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xffffffffffffffff
call fcn.0047b870
int3