Function at 0x4596a5
Capabilities:
Link many functions at runtime

Disassembly:
push ebx
push ebp
push esi
push edi
push dword [0x5be040]
call fcn.0046b017
mov ebx, eax
call fcn.00463f0f
call fcn.00460916
xor ebp, ebp
cmp dword [0x5bd4a0], ebp
jne 0x459831
mov esi, 0xa8
push esi
push ebp
push 0x5bd3f8
call fcn.00421520
add esp, 0xc
mov dword [0x5bd3fc], esi
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [0x5bd3f8], 0x16
mov dword [0x5bd400], 0x45937c
push str.MSFTEDIT.DLL
mov dword [0x5bd418], 0x459293
mov dword [0x5bd410], 0x459674
mov dword [0x5bd414], 0x459bdc
mov dword [0x5bd42c], 0x4593c3
mov dword [0x5bd424], 0x4593a9
mov dword [0x5bd420], 0x45999b
mov dword [0x5bd438], 0x459605
mov dword [0x5bd43c], 0x459b5f
mov dword [0x5bd460], 0x459585
mov dword [0x5bd464], 0x459a29
mov dword [0x5bd474], 0x4595d5
mov dword [0x5bd470], 0x459a9a
mov dword [0x5bd490], 0x4595fb
mov dword [0x5bd494], 0x459b30
call esi
push str.RICHED20.DLL
mov dword [0x5bd4a4], eax
call esi
mov dword [0x5bd4a8], eax
test eax, eax
jne 0x4597b1
push str.RICHED32.DLL
call esi
mov eax, dword [0x5bcfbc]
test eax, eax
je 0x459827
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.OpenThemeData
push eax
call esi
push str.CloseThemeData
push dword [0x5bcfbc]
mov dword [0x5bd4b0], eax
call esi
push str.GetThemeBackgroundContentRect
push dword [0x5bcfbc]
mov dword [0x5bd4b4], eax
call esi
push str.IsThemeBackgroundPartiallyTransparent
push dword [0x5bcfbc]
mov dword [0x5bd4b8], eax
call esi
push str.DrawThemeParentBackground
push dword [0x5bcfbc]
mov dword [0x5bd4bc], eax
call esi
push str.DrawThemeBackground
push dword [0x5bcfbc]
mov dword [0x5bd4c0], eax
call esi
mov dword [0x5bd4c4], eax
mov dword [0x5bd4a0], 1
xor eax, eax
mov edi, 0x200
cmp dword [0x5bcfb8], eax
cmovne edi, eax
cmp dword [0x5bd4a4], eax
je 0x459850
mov esi, str.RICHEDIT50W
jmp 0x459863
cmp dword [0x5bd4a8], ebp
mov esi, str.RichEdit20W
mov eax, str.RichEdit
cmove esi, eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x24]
push eax
call fcn.00462dcf
mov eax, dword [esp + 0x28]
push ebp
push dword [0x5bb8a4]
or eax, 0x503111c4
push 0xffffffffffffffff
push dword [ebx]
push dword [esp + 0x34]
push dword [esp + 0x34]
push dword [esp + 0x34]
push dword [esp + 0x34]
push eax
push ebp
push esi
push edi
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov esi, eax
test esi, esi
je 0x45998d
push dword [esp + 0x14]
push dword [0x5be048]
call fcn.0046b68d
mov edi, eax
push 0x10
push 8
or dword [edi + 0x18], 0xffffffff
or dword [edi + 0x14], 0xffffffff
mov ecx, dword [ebx + 8]
mov dword [edi + 0x1c], ecx
push dword [0x5bb8a0]
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
push eax
push str.PB_ClientRect
push esi
call dword [sym.imp.USER32.dll_SetPropW]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push ebp
push 0xffffffffffffffff
push 0xc5
push esi
call ebx
push ebp
push 1
push 0x459
push esi
call ebx
push 0x4593ee
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 0x37
push ebp
push ebp
push ebp
push ebp
push ebp
push esi
mov dword [0x5bd4ac], eax
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x541
push ebp
push ebp
push esi
call dword [sym.imp.USER32.dll_RedrawWindow]
push ebp
push ebp
push 0x43b
push esi
call ebx
or eax, 1
push eax
push ebp
push 0x445
push esi
call ebx
cmp dword [0x5bd4a4], ebp
je 0x459966
push 4
push 4
push 0x513
push esi
call ebx
push 0x5bd3f8
push esi
push edi
push dword [esp + 0x20]
call fcn.0045f8ea
mov esi, eax
mov eax, 0x10000000
test dword [esp + 0x28], eax
je 0x45998d
push ebp
push 1
push eax
push edi
call fcn.00459a29
call fcn.00463f1e
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
ret 0x18