Function at 0x45aaa0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x506e17
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5364d0]
xor eax, esp
push eax
lea eax, [esp + 0x24]
mov dword fs:[0], eax
mov edi, dword [esp + 0x34]
mov esi, edi
call fcn.0045b030
xor ebp, ebp
mov dword [esp + 0x2c], ebp
mov dword [edi + 0x60], vtable.WTL::CMessageFilter.0
mov dword [edi + 0x68], vtable.CSomCallbackT_struct_IOpenCallback_.0
mov dword [edi + 0x70], ebp
mov dword [edi + 0x74], ebp
mov dword [edi + 0x78], ebp
mov dword [edi + 0x7c], ebp
mov dword [edi + 0x80], ebp
mov dword [edi + 0x84], ebp
mov dword [edi + 0x88], ebp
mov dword [edi + 0x8c], ebp
mov dword [edi + 0x90], ebp
mov dword [edi + 0x98], vtable.CSomSpinLockImpl_class_CMainDlgImpl_.0
xor eax, eax
mov dword [edi + 0x9c], ebp
mov dword [edi + 0xa0], ebp
mov word [edi + 0xa8], ax
lea eax, [edi + 0xac]
push eax
call fcn.00478d80
mov ebx, 1
mov dword [edi + 0xcc], ebp
mov dword [edi + 0xd0], ebp
mov dword [edi + 0xd4], ebx
mov byte [esp + 0x2c], bl
lea ecx, [edi + 0xd8]
push ecx
mov dword [edi], vtable.CMainDlgImpl.1.0
mov dword [edi + 0x60], vtable.CMainDlgImpl.2.0
mov dword [edi + 0x68], vtable.CMainDlgImpl.3.0
mov dword [edi + 0x98], vtable.CMainDlgImpl.4.0
mov dword [edi + 0xa4], vtable.CMainDlgImpl.0
call fcn.004c3d20
mov byte [esp + 0x2c], 2
mov dword [edi + 0x4400], ebp
lea esi, [edi + 0x4418]
push esi
mov dword [edi + 0x440c], ebx
mov dword [edi + 0x4410], ebp
mov dword [edi + 0x4414], ebp
call fcn.0045b1a0
mov dword [esi], vtable.CNZPSplitterWindow.0
lea esi, [edi + 0x4480]
mov byte [esp + 0x2c], 3
call fcn.0045b0b0
lea esi, [edi + 0x4610]
call fcn.004c6fc0
mov byte [esp + 0x2c], 5
mov dword [edi + 0x4a74], ebp
mov dword [edi + 0x4a78], 0x1003
mov dword [edi + 0x4a7c], ebp
mov dword [edi + 0x4a80], ebp
mov dword [edi + 0x4a88], ebp
mov edx, dword [0x563288]
mov eax, dword [edx + 0xc]
mov ecx, 0x563288
call eax
add eax, 0x10
mov dword [edi + 0x4c94], eax
or esi, 0xffffffff
mov dword [edi + 0x4c98], esi
mov dword [edi + 0x4c9c], ebp
mov dword [edi + 0x4ca0], ebp
mov dword [edi + 0x4ca4], ebp
mov dword [edi + 0x4ca8], ebp
mov dword [edi + 0x4cac], 4
mov dword [edi + 0x4cb0], ebp
mov dword [edi + 0x4ebc], esi
mov byte [esp + 0x2c], 8
mov edx, dword [0x563288]
mov eax, dword [edx + 0xc]
mov ecx, 0x563288
call eax
add eax, 0x10
mov dword [edi + 0x4ec0], eax
mov byte [esp + 0x2c], 9
lea eax, [edi + 0x4ed0]
push eax
mov dword [edi + 0x4ec4], ebp
mov dword [edi + 0x4ec8], ebp
mov dword [edi + 0x4ecc], ebp
call fcn.00477500
mov dword [edi + 0x4ef0], ebp
mov ecx, dword [sym.imp.USER32.dll_DefWindowProcW]
mov dword [edi + 0x4ef8], ebp
mov dword [edi + 0x4f08], ebp
mov dword [edi + 0x4f0c], ebp
mov dword [edi + 0x4f10], ebp
mov dword [edi + 0x4f14], ecx
mov dword [edi + 0x4ef4], 0x516934
lea edx, [edi + 0x4f1c]
mov byte [esp + 0x2c], 0xc
push edx
mov dword [edi + 0x4f18], ebp
call fcn.00474550
mov byte [esp + 0x2c], 0xd
mov eax, dword [0x563288]
mov edx, dword [eax + 0xc]
mov ecx, 0x563288
call edx
add eax, 0x10
mov dword [edi + 0x51dc], eax
mov byte [esp + 0x2c], 0xe
mov eax, dword [0x563288]
mov edx, dword [eax + 0xc]
mov ecx, 0x563288
call edx
add eax, 0x10
mov dword [edi + 0x51e0], eax
mov dword [edi + 0x51e4], ebp
mov byte [esp + 0x2c], 0x10
mov eax, dword [0x563288]
mov edx, dword [eax + 0xc]
mov ecx, 0x563288
call edx
add eax, 0x10
mov dword [edi + 0x51e8], eax
lea eax, [edi + 0x51f0]
push eax
mov byte [esp + 0x30], 0x11
call fcn.00421060
lea ecx, [edi + 0x52a8]
push ecx
mov byte [esp + 0x30], 0x12
call fcn.0041edf0
lea edx, [edi + 0x5314]
mov byte [esp + 0x2c], 0x13
push edx
mov dword [edi + 0x530c], ebp
mov dword [edi + 0x5310], esi
call fcn.0045b130
mov dword [edi + 0x535c], ebp
mov dword [edi + 0x5360], ebp
lea eax, [edi + 0x536c]
mov byte [esp + 0x2c], 0x15
mov dword [edi + 0x5368], ebp
push eax
call fcn.004b9b10
mov byte [esp + 0x2c], 0x16
mov dword [edi + 0x53a4], ebp
mov edx, dword [0x563288]
mov eax, dword [edx + 0xc]
mov ecx, 0x563288
call eax
add eax, 0x10
mov dword [edi + 0x53a8], eax
mov byte [esp + 0x2c], 0x17
lea eax, [edi + 0x53b8]
push eax
mov dword [edi + 0x53ac], ebp
mov dword [edi + 0x53b0], ebp
mov dword [edi + 0x53b4], 0x2300
call fcn.004aa8a0
mov byte [esp + 0x2c], 0x18
mov edx, dword [0x563288]
mov eax, dword [edx + 0xc]
mov ecx, 0x563288
call eax
add eax, 0x10
mov dword [edi + 0x53d8], eax
mov byte [esp + 0x2c], 0x19
mov dword [edi + 0x53dc], esi
mov dword [edi + 0x53e4], esi
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [edi + 0x53e0], ebx
cmp dword [0x566bb0], ebp
jne 0x45ae4a
mov ecx, dword [0x566ba8]
push ecx
mov dword [0x566bb0], ebx
call esi
cmp eax, ebp
je 0x45ae4a
mov edx, dword [0x566bac]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x566bb4], eax
cmp dword [0x566bb4], ebp
je 0x45aec2
cmp dword [0x566bb0], ebp
jne 0x45ae7f
mov eax, dword [0x566ba8]
push eax
mov dword [0x566bb0], ebx
call esi
cmp eax, ebp
je 0x45ae7f
mov ecx, dword [0x566bac]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x566bb4], eax
push ebx
push 0x49
call dword [0x566bb4]
cmp dword [0x566bb0], ebp
jne 0x45aeb6
mov edx, dword [0x566ba8]
push edx
mov dword [0x566bb0], ebx
call esi
cmp eax, ebp
je 0x45aeb6
mov ecx, dword [0x566bac]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x566bb4], eax
push ebx
push 0x233
call dword [0x566bb4]
lea edx, [esp + 0x18]
push edx
mov dword [esp + 0x1c], 8
mov dword [esp + 0x20], 0x200
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
test byte [0x5667e8], bl
jne 0x45aefe
or dword [0x5667e8], ebx
push 0x50c340
mov dword [0x5667e4], ebp
call fcn.004e413c
add esp, 4
push ecx
mov dword [esp + 0x18], esp
mov esi, esp
push ecx
mov eax, esp
mov dword [esp + 0x1c], esp
push eax
mov ecx, str.address_combobox.png
call fcn.00401640
call fcn.004b4880
lea ecx, [edi + 0x4480]
call fcn.004be030
mov esi, dword [0x56610c]
mov dword [edi + 0x4594], ebx
mov eax, dword [esi + 8]
cmp eax, ebp
jne 0x45af41
mov ecx, 3
jmp 0x45af6f
cmp eax, ebx
jne 0x45af5e
mov eax, dword [esi + 4]
lea ecx, [eax + eax*2]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jmp 0x45af6f
mov eax, dword [esi]
lea ecx, [eax + eax*2]
mov eax, 0x51eb851f
mul ecx
mov ecx, edx
shr ecx, 5
mov eax, dword [esi + 8]
cmp eax, ebp
jne 0x45af7d
mov eax, 6
jmp 0x45afaa
cmp eax, ebx
mov eax, 0x51eb851f
jne 0x45af9c
mov esi, dword [esi + 4]
lea edx, [esi + esi*2]
add edx, edx
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
jmp 0x45afaa
mov esi, dword [esi]
lea edx, [esi + esi*2]
add edx, edx
mul edx
mov eax, edx
shr eax, 5
mov dword [edi + 0x4598], eax
mov dword [edi + 0x459c], ecx
mov eax, dword [edi + 0x4554]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
test eax, eax
je 0x45afcd
mov dword [edi + 0x4554], ebp
push 0xc7a88e
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [edi + 0x4554], eax
lea eax, [edi + 0xa4]
mov dword [edi + 0x535c], eax
call fcn.00421210
mov eax, edi
mov ecx, dword [esp + 0x24]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 4