Function at 0x47fe06
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x84
push ebx
push esi
mov esi, ecx
mov eax, dword [esi + 0x1d]
test eax, eax
push edi
mov dword [esp + 0x14], eax
je 0x48018c
jmp 0x47fe37
test ecx, ecx
jl 0x48018c
add eax, 8
mov dword [esp + 0x14], eax
mov ecx, dword [eax]
cmp ecx, dword [ebp + 0x10]
jne 0x47fe28
mov edi, dword [esi]
mov ebx, dword [sym.imp.USER32.dll_GetDlgCtrlID]
push ecx
push dword [ebp + 8]
add edi, 0x34
call ebx
push eax
mov ecx, esi
call dword [edi]
test al, al
je 0x48018c
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x31
push dword [ebp + 8]
call edi
mov dword [esi + 0x15], eax
mov eax, dword [esi + 4]
test eax, eax
je 0x47fe7e
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
mov eax, dword [ebp + 0x10]
and dword [esi + 0x11], 0
test eax, eax
mov ecx, dword [ebp + 0xc]
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
jne 0x47feb2
lea eax, [esp + 0x18]
push eax
push ecx
push 0x100e
push dword [ebp + 8]
mov dword [esp + 0x28], 2
call edi
xor ecx, ecx
mov dword [esp + 0x18], ecx
jmp 0x47fecd
and dword [esp + 0x18], 0
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x18]
push eax
push ecx
push 0x1038
push dword [ebp + 8]
call edi
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
cmp eax, 1
mov dword [esi + 0x25], eax
jne 0x47ff51
push ecx
push dword [0x5a9cd0]
mov eax, SysReAllocString
push 0x5b
push dword [ebp + 8]
push eax
push eax
push eax
push eax
push 0x40210043
push 0x53ec98
push str.combobox
push ecx
call dword [sym.imp.USER32.dll_CreateWindowExW]
push 0
push 0
push 0x14b
push eax
mov dword [esi + 4], eax
call edi
push dword [ebp + 0xc]
mov eax, dword [esi]
push dword [ebp + 0x10]
add eax, 4
push dword [ebp + 8]
mov dword [esp + 0x20], eax
call ebx
push eax
mov eax, dword [esp + 0x20]
mov ecx, esi
call dword [eax]
push dword [ebp + 0xc]
mov eax, dword [esi]
push dword [ebp + 0x10]
add eax, 8
push dword [ebp + 8]
mov dword [esp + 0x20], eax
call ebx
push eax
mov eax, dword [esp + 0x20]
jmp 0x47ffe7
cmp eax, 2
jne 0x480195
push ecx
push dword [0x5a9cd0]
push 0x5b
push dword [ebp + 8]
push 0x96
push ecx
push ecx
push ecx
push 0x50210042
push 0x53ec98
push 0x58172c
push ecx
call dword [sym.imp.USER32.dll_CreateWindowExW]
push 0
push 0
push 0x14b
push eax
mov dword [esi + 4], eax
call edi
push 1
push str.Extended
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SetPropW]
push 0
push 1
push 0x155
push dword [esi + 4]
call edi
push dword [ebp + 0xc]
mov eax, dword [esi]
push dword [ebp + 0x10]
add eax, 4
push dword [ebp + 8]
mov dword [esp + 0x20], eax
call ebx
push eax
mov eax, dword [esp + 0x20]
mov ecx, esi
call dword [eax]
push dword [ebp + 0xc]
mov eax, dword [esi]
push dword [ebp + 0x10]
add eax, 8
push dword [ebp + 8]
mov dword [esp + 0x20], eax
call ebx
push eax
mov eax, dword [esp + 0x20]
mov ecx, esi
call dword [eax]
push 0
push eax
push 0x160
push dword [esi + 4]
call edi
mov dword [esi + 0x11], 0x78
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
push 1
push dword [esi + 0x11]
sub ebx, edx
push ebx
add ecx, 0xfffffffe
lea eax, [edx + 2]
push ecx
push eax
push dword [esi + 4]
mov dword [esi + 0x2a], eax
mov dword [esi + 0x2e], ecx
call dword [sym.imp.USER32.dll_MoveWindow]
push 0
push dword [esi + 0x15]
push 0x30
push dword [esi + 4]
call edi
push 5
push dword [esi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [esi + 4]
test eax, eax
jne 0x48004b
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
xor ecx, ecx
push 2
mov ebx, 0x4000
pop edx
mov eax, ebx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0051fd80
and word [eax], 0
pop ecx
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x14], eax
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x28]
push eax
push 0
push 0x104b
push dword [ebp + 8]
mov dword [esp + 0x3c], ecx
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x38], 1
mov dword [esp + 0x40], ecx
mov dword [esp + 0x50], ebx
call edi
mov eax, dword [esi + 0x25]
cmp eax, 1
je 0x480230
cmp eax, 2
je 0x480230
cmp eax, 3
jne 0x4800da
push dword [esp + 0x14]
push 0
push 0xc
push dword [esi + 4]
call edi
push 0xffffffffffffffff
push 0
push 0xb1
push dword [esi + 4]
call edi
mov ebx, dword [sym.imp.USER32.dll_SetPropW]
push str.LVEdtOldWndProc
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetPropW]
test eax, eax
jne 0x48010d
push 0x47f651
push 0xfffffffffffffffc
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push str.LVEdtOldWndProc
push dword [esi + 4]
call ebx
push esi
push str.LVExtColHandler
push dword [esi + 4]
call ebx
cmp dword [esi + 0x25], 2
jne 0x480176
push 0
push 0
push 0x407
push dword [esi + 4]
call edi
mov edi, str.EditOldWndProc
push edi
push eax
mov dword [esp + 0x18], eax
call dword [sym.imp.USER32.dll_GetPropW]
test eax, eax
jne 0x48015a
push 0x47f31c
push 0xfffffffffffffffc
push dword [esp + 0x18]
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push edi
push dword [esp + 0x18]
call ebx
mov edi, str.LVExtColHandler
push edi
push dword [esp + 0x14]
call dword [sym.imp.USER32.dll_GetPropW]
test eax, eax
jne 0x480176
push esi
push edi
push dword [esp + 0x18]
call ebx
push 0
push str.DoNotUpdateParentList
push dword [esi + 4]
call ebx
push dword [esp + 0x14]
call fcn.00520947
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 3
jne 0x48020b
push ecx
push dword [0x5a9cd0]
mov eax, SysReAllocString
push 0x5b
push dword [ebp + 8]
push eax
push eax
push eax
push eax
push 0x40010080
push 0x53ec98
push str.edit
push 0x200
call dword [sym.imp.USER32.dll_CreateWindowExW]
push 0
push 0x104
push 0xc5
push eax
mov dword [esi + 4], eax
call edi
mov eax, dword [esp + 0x24]
sub eax, dword [esp + 0x1c]
push dword [ebp + 0xc]
add eax, 4
push dword [ebp + 0x10]
mov dword [esi + 0x11], eax
mov eax, dword [esi]
push dword [esi + 4]
add eax, 0x18
mov dword [esp + 0x20], eax
call ebx
push eax
mov eax, dword [esp + 0x20]
mov ecx, esi
call dword [eax]
jmp 0x47ffff
cmp eax, 4
jne 0x47ffff
cmp byte [ebp + 0x14], 0
je 0x47ffff
push dword [ebp + 0x10]
mov eax, dword [esi]
push dword [ebp + 0xc]
mov ecx, esi
call dword [eax + 0x28]
jmp 0x48018c
push 0x34
pop ebx
push ebx
lea eax, [esp + 0x60]
push 0
push eax
call fcn.005251f0
add esp, 0xc
lea eax, [esp + 0x5c]
push eax
push dword [esi + 4]
mov dword [esp + 0x64], ebx
call dword [sym.imp.USER32.dll_GetComboBoxInfo]
mov eax, dword [esp + 0x8c]
mov ebx, str.LVEdtOldWndProc
push ebx
push eax
mov dword [esp + 0x18], eax
call dword [sym.imp.USER32.dll_GetPropW]
test eax, eax
jne 0x480292
push 0x47faa1
push 0xfffffffffffffffc
push dword [esp + 0x18]
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push ebx
push dword [esp + 0x18]
mov ebx, dword [sym.imp.USER32.dll_SetPropW]
call ebx
jmp 0x480298
mov ebx, dword [sym.imp.USER32.dll_SetPropW]
push esi
push str.ListPDLDropDown
push dword [esp + 0x18]
call ebx
mov eax, dword [esi + 0x25]
cmp eax, 1
jne 0x4802d4
push dword [esp + 0x14]
push 0xffffffffffffffff
push 0x158
push dword [esi + 4]
call edi
test eax, eax
jg 0x4802c2
xor eax, eax
push 0
push eax
push 0x14e
push dword [esi + 4]
call edi
jmp 0x4800e0
cmp eax, 2
jne 0x4800e0
push dword [esp + 0x14]
push 0
push 0xc
jmp 0x4802ca