Function at 0x4ae390
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e4df2
mov eax, dword fs:[0]
push eax
mov eax, 0x1d0c0
call fcn.00485230
mov eax, dword [0x55b090]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
xor eax, eax
lea ecx, [ebp - 0xe50]
mov dword [ebp - 0x1d074], eax
mov edx, 0x51c910
mov dword [ebp - 0x1d068], eax
mov dword [ebp - 0xe90], 8
mov dword [ebp - 0xe8c], 0xff
call fcn.004c6fd0
push dword [eax]
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea ecx, [ebp - 0xe50]
mov edi, eax
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
je 0x4ae454
mov edx, 0x52eb70
lea ecx, [ebp - 0xe54]
call fcn.00509d60
push dword [eax]
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea ecx, [ebp - 0xe54]
mov dword [ebp - 0xe58], eax
call dword [sym.imp.mfc140u.dll_Ordinal_1046]
mov eax, dword [ebp - 0xe58]
test eax, eax
je 0x4ae44d
lea ecx, [ebp - 0xe90]
push ecx
call eax
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov edx, 0x52fd00
lea ecx, [ebp - 0xe54]
call fcn.00509d60
mov edi, eax
mov edx, 0x51bb70
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xe50]
call fcn.004c6fd0
push dword [edi]
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea ecx, [ebp - 0xe50]
mov edi, eax
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe54]
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.mfc140u.dll_Ordinal_1046]
test edi, edi
je 0x4ae4ba
push 0x48df90
call edi
mov ecx, esi
call dword [sym.imp.mfc140u.dll_CWinApp::InitInstance]
mov eax, dword [esi + 0x44]
push 0
mov dword [0x55d058], eax
call dword [sym.imp.mfc140u.dll_AfxEnableControlContainer]
mov edx, 0x526880
lea ecx, [ebp - 0xe50]
call fcn.004c6fd0
mov dword [ebp - 4], 1
push dword [eax]
call fcn.004237a0
add esp, 8
mov dword [esi + 0x628], eax
lea ecx, [ebp - 0xe50]
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
call fcn.00412e30
cmp eax, 0xb7
jne 0x4ae5d7
mov edx, 0x5268b0
lea ecx, [ebp - 0xe54]
call fcn.004c6fd0
mov esi, eax
mov edx, 0x5268d4
mov dword [ebp - 4], 2
lea ecx, [ebp - 0xe50]
call fcn.004c6fd0
mov byte [ebp - 4], 3
mov edx, dword [esi]
mov ecx, dword [eax]
call fcn.004a1430
lea ecx, [ebp - 0xe50]
mov esi, eax
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe54]
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push 0
push 0
mov edx, 0x115c
mov ecx, esi
call fcn.0041afb0
mov edx, 0x5268b0
lea ecx, [ebp - 0xe54]
call fcn.004c6fd0
mov esi, eax
mov edx, 0x5268f0
mov dword [ebp - 4], 4
lea ecx, [ebp - 0xe50]
call fcn.004c6fd0
mov byte [ebp - 4], 5
xor ecx, ecx
mov edx, dword [eax]
push 0x40
push dword [esi]
call fcn.00495f20
add esp, 0x10
lea ecx, [ebp - 0xe50]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe54]
jmp 0x4aff9e
lea eax, [ebp - 0xe50]
mov ecx, esi
push eax
call fcn.00452610
lea ecx, [ebp - 0xe50]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push 0x208
lea edx, [ebp - 0xe48]
call fcn.0048c130
add esp, 4
lea eax, [ebp - 0xe48]
lea ecx, [ebp - 0xe7c]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
lea ecx, [ebp - 0xe7c]
mov dword [ebp - 4], 6
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__20]
lea eax, [ebp - 0xc40]
push eax
sub esp, 8
call fcn.0043cca0
add esp, 0xc
lea eax, [ebp - 0xc40]
lea ecx, [ebp - 0xe78]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
lea ecx, [ebp - 0xe78]
mov byte [ebp - 4], 7
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__20]
push 0
push dword [ebp - 0xe78]
lea ecx, [ebp - 0xe7c]
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__10]
test eax, eax
mov dword [ebp - 0xe50], 1
mov ecx, reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebp - 0x1d040], 0x104
sets al
mov edx, 0x5234a4
mov byte [esi + 0xdc], al
mov eax, GetEffectiveClientRect
cmp byte [0x56d20c], 0
cmovne eax, ecx
lea ecx, [ebp - 0xe6c]
mov dword [ebp - 0xe58], eax
call fcn.004c6fd0
mov byte [ebp - 4], 8
mov ecx, 0x56d0fc
mov edi, dword [eax]
mov eax, dword [esi + 0x104]
mov dword [ebp - 0xe54], eax
lea eax, [ebp - 0x1d040]
push eax
push dword [ebp - 0x1d040]
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::GetBuffer_1]
mov edx, dword [ebp - 0xe54]
mov ecx, dword [ebp - 0xe58]
push eax
lea eax, [ebp - 0xe50]
push eax
push edi
call fcn.0042a580
add esp, 0x10
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xe6c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push 0xffffffffffffffff
mov ecx, 0x56d0fc
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::ReleaseBuffer]
cmp dword [esi + 0xe0], 0
lea edi, [esi + 0xe0]
jne 0x4ae748
lea eax, [ebp - 0xe4c]
push eax
push 0
push edi
push 0x4be270
call fcn.00448410
add esp, 0x10
mov dword [edi], eax
movzx eax, byte [esi + 0xdc]
lea ecx, [esi + 0x50c]
push eax
call fcn.004faa70
mov edx, 0x52f150
mov dword [ebp - 0x1d040], 0
lea ecx, [ebp - 0x1d0bc]
call fcn.00509d60
mov edi, eax
mov edx, 0x51bb70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x1d0c0]
call fcn.004c6fd0
push dword [edi]
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea ecx, [ebp - 0x1d0c0]
mov edi, eax
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0x1d0bc]
mov byte [ebp - 4], 7
call dword [sym.imp.mfc140u.dll_Ordinal_1046]
test edi, edi
je 0x4ae7c6
call edi
mov dword [ebp - 0x1d040], eax
mov edx, 0x533610
mov dword [ebp - 0x1d05c], 0
lea ecx, [ebp - 0x1d0b8]
call fcn.004c6fd0
push dword [eax]
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea ecx, [ebp - 0x1d0b8]
mov edi, eax
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
je 0x4ae84b
mov edx, 0x52ef90
lea ecx, [ebp - 0x1d0b4]
call fcn.00509d60
push dword [eax]
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea ecx, [ebp - 0x1d0b4]
mov dword [ebp - 0xe50], eax
call dword [sym.imp.mfc140u.dll_Ordinal_1046]
mov eax, dword [ebp - 0xe50]
test eax, eax
je 0x4ae844
lea ecx, [ebp - 0xe80]
push ecx
push dword [ebp - 0x1d040]
call eax
mov dword [ebp - 0x1d05c], eax
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0xe64]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov edi, dword [ebp - 0x1d05c]
mov byte [ebp - 4], 0xa
mov byte [ebp - 0x1d040], 0
test edi, edi
je 0x4af33f
cmp dword [ebp - 0xe80], 1
jle 0x4af33f
mov dword [ebp - 0x1d060], 1
nop word [eax + eax]
mov edx, 0x526934
lea ecx, [ebp - 0x1d0ac]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d060]
mov byte [ebp - 4], 0xb
push dword [edi + ecx*4]
push dword [eax]
lea eax, [ebp - 0xe64]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__15]
add esp, 0xc
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1d0ac]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526940
lea ecx, [ebp - 0x1d0a4]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [edi + ecx*4]
nop word [eax + eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4ae916
test dx, dx
je 0x4ae912
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4ae916
add ecx, 4
add eax, 4
test dx, dx
jne 0x4ae8f0
xor edi, edi
jmp 0x4ae91b
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d0a4]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4ae935
mov dword [esi + 0x630], 1
mov edx, 0x526960
lea ecx, [ebp - 0x1d0a0]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4ae97c
test dx, dx
je 0x4ae978
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4ae97c
add ecx, 4
add eax, 4
test dx, dx
jne 0x4ae956
xor edi, edi
jmp 0x4ae981
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d0a0]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4ae99b
mov dword [esi + 0x62c], 1
mov edx, 0x526980
lea ecx, [ebp - 0x1d09c]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
nop dword [eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4ae9e6
test dx, dx
je 0x4ae9e2
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4ae9e6
add ecx, 4
add eax, 4
test dx, dx
jne 0x4ae9c0
xor edi, edi
jmp 0x4ae9eb
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d09c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aea05
mov dword [esi + 0x63c], 1
mov edx, 0x5269a0
lea ecx, [ebp - 0x1d094]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aea4c
test dx, dx
je 0x4aea48
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aea4c
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aea26
xor edi, edi
jmp 0x4aea51
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d094]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aec1a
call fcn.0048cfb0
test al, al
jne 0x4aebca
call fcn.004b4170
test al, al
jne 0x4aebca
call fcn.00428190
test al, al
jne 0x4aebca
call fcn.004d8660
test al, al
jne 0x4aebca
push 0x208
lea eax, [ebp - 0x218]
push edi
push eax
call sub.VCRUNTIME140.dll_memset
push 0x104
lea edx, [ebp - 0x218]
call fcn.0048c130
add esp, 0x10
lea ecx, [ebp - 0x218]
call fcn.0044ad90
push eax
lea ecx, [ebp - 0xe6c]
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
lea ecx, [ebp - 0x218]
mov byte [ebp - 4], 0xc
call fcn.004c47e0
lea ecx, [ebp - 0xe68]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov edx, 0x526700
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1d0cc]
call fcn.004c6fd0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x218]
push dword [ebp - 0xe6c]
push ecx
push dword [eax]
lea eax, [ebp - 0xe68]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
add esp, 0x10
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1d0cc]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526690
lea ecx, [ebp - 0xe74]
call fcn.004c6fd0
mov edx, 0x526600
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xe70]
call fcn.004c6fd0
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0xe68]
mov edx, dword [ebp - 0xe74]
mov ecx, dword [eax - 0xc]
add ecx, ecx
cmp byte [esi + 0xdc], 0
push ecx
push eax
push 1
push dword [ebp - 0xe70]
mov ecx, reloc.OLEAUT32.dll_SysReAllocString
jne 0x4aeb8e
mov ecx, GetEffectiveClientRect
call fcn.004f5f00
add esp, 0x10
lea ecx, [ebp - 0xe70]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe74]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe68]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe6c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x5269c0
lea ecx, [ebp - 0x1d0b0]
call fcn.004c6fd0
push 0
push 0x51a9b8
mov byte [ebp - 4], 0x11
push dword [eax]
call fcn.00414c50
lea ecx, [ebp - 0x1d0b0]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov dword [esi + 0x634], 1
mov dword [esi + 0x63c], 1
mov dword [esi + 0x638], 1
mov edx, 0x5269cc
lea ecx, [ebp - 0x1d07c]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
nop dword [eax + eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aec66
test dx, dx
je 0x4aec62
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aec66
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aec40
xor edi, edi
jmp 0x4aec6b
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d07c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aec85
mov dword [esi + 0x640], 1
mov edx, 0x5269e0
lea ecx, [ebp - 0x1d080]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aeccc
test dx, dx
je 0x4aecc8
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aeccc
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aeca6
xor edi, edi
jmp 0x4aecd1
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d080]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aed6a
push 0x208
lea eax, [ebp - 0x420]
push edi
push eax
call sub.VCRUNTIME140.dll_memset
push 0x104
lea edx, [ebp - 0x420]
call fcn.0048c130
add esp, 0x10
lea ecx, [ebp - 0x420]
call fcn.0044ad90
push eax
lea ecx, [ebp - 0xe54]
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
lea ecx, [ebp - 0xe58]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
push ecx
lea eax, [ebp - 0xe54]
mov byte [ebp - 4], 0x13
mov ecx, esp
lea edi, [ebp - 0xe58]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__19]
mov ecx, edi
call fcn.004d7020
add esp, 4
mov ecx, edi
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe54]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526a00
lea ecx, [ebp - 0x1d084]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
nop dword [eax + eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aedb6
test dx, dx
je 0x4aedb2
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aedb6
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aed90
xor edi, edi
jmp 0x4aedbb
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d084]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aedd5
mov dword [esi + 0x644], 1
mov edx, 0x526a20
lea ecx, [ebp - 0x1d088]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aee1c
test dx, dx
je 0x4aee18
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aee1c
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aedf6
xor edi, edi
jmp 0x4aee21
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d088]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aee3b
mov dword [esi + 0x648], 1
mov edx, 0x526a40
lea ecx, [ebp - 0x1d08c]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
nop dword [eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aee86
test dx, dx
je 0x4aee82
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aee86
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aee60
xor edi, edi
jmp 0x4aee8b
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d08c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aeea5
mov dword [esi + 0x64c], 1
mov edx, 0x526a60
lea ecx, [ebp - 0x1d090]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aeeec
test dx, dx
je 0x4aeee8
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aeeec
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aeec6
xor edi, edi
jmp 0x4aeef1
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d090]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aef0b
mov dword [esi + 0x654], 1
mov edx, 0x526a80
lea ecx, [ebp - 0x1d0c8]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
nop dword [eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aef56
test dx, dx
je 0x4aef52
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aef56
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aef30
xor edi, edi
jmp 0x4aef5b
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d0c8]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4aef8a
mov eax, dword [ebp - 0x1d05c]
mov ecx, dword [ebp - 0x1d060]
mov dword [esi + 0x65c], 1
mov ecx, dword [eax + ecx*4 + 4]
call fcn.00427fa0
mov edx, 0x526aa0
lea ecx, [ebp - 0x1d0c4]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
nop dword [eax + eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4aefd6
test dx, dx
je 0x4aefd2
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4aefd6
add ecx, 4
add eax, 4
test dx, dx
jne 0x4aefb0
xor edi, edi
jmp 0x4aefdb
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d0c4]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4af03b
mov edx, 0x51b4c0
mov dword [esi + 0x65c], 1
lea ecx, [ebp - 0x1d0a8]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov byte [ebp - 4], 0x14
push dword [ecx + edx*4 + 4]
push dword [eax]
lea eax, [esi + 0x664]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
add esp, 0xc
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1d0a8]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526ac0
lea ecx, [ebp - 0x1d098]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
nop dword [eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4af086
test dx, dx
je 0x4af082
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4af086
add ecx, 4
add eax, 4
test dx, dx
jne 0x4af060
xor edi, edi
jmp 0x4af08b
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d098]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4af0a5
mov dword [esi + 0x660], 1
mov edx, 0x526af0
lea ecx, [ebp - 0x1d078]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4af0ec
test dx, dx
je 0x4af0e8
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4af0ec
add ecx, 4
add eax, 4
test dx, dx
jne 0x4af0c6
xor edi, edi
jmp 0x4af0f1
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0x1d078]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
jne 0x4af2aa
push 0x208
lea eax, [ebp - 0x218]
mov dword [esi + 0x63c], 1
push edi
push eax
call sub.VCRUNTIME140.dll_memset
push 0x104
lea edx, [ebp - 0x218]
call fcn.0048c130
add esp, 0x10
lea ecx, [ebp - 0x218]
call fcn.004c47e0
mov edx, 0x51b608
lea ecx, [ebp - 0x1d064]
call fcn.004c6fd0
mov dword [ebp - 0xe60], eax
mov edx, 0x51b380
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x1d070]
call fcn.004c6fd0
mov edi, eax
mov ecx, edi
mov byte [ebp - 4], 0x17
call dword [sym.imp.mfc140u.dll_Ordinal_5921]
push eax
lea ecx, [ebp - 0xe50]
call dword [sym.imp.mfc140u.dll_Ordinal_285]
mov ecx, dword [ebp - 0xe60]
mov edx, dword [edi]
mov dword [ebp - 0x1d06c], eax
mov eax, dword [ebp - 0x1d068]
mov ecx, dword [ecx]
or eax, 1
mov dword [ebp - 0x1d068], eax
mov dword [ebp - 0x1d074], eax
lea eax, [ebp - 0xe50]
push dword [ecx - 0xc]
push ecx
push dword [edx - 0xc]
push edx
push eax
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::Concatenate]
mov edx, dword [ebp - 0x1d06c]
lea ecx, [ebp - 0x218]
add esp, 0x14
mov edx, dword [edx]
call fcn.0042ecb0
and dword [ebp - 0x1d068], 0xfffffffe
lea ecx, [ebp - 0xe50]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0x1d070]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0x1d064]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x1d044]
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x1d044]
call fcn.0049a410
test eax, eax
je 0x4af29a
push 0x44
lea eax, [ebp - 0xed4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [ebp - 0x1d044]
lea eax, [ebp - 0x1d058]
add esp, 0xc
xorps xmm0, xmm0
mov edx, 0x51a9b8
movups xmmword [ebp - 0x1d058], xmm0
push eax
lea eax, [ebp - 0xed4]
push eax
sub esp, 8
push 0x400
sub esp, 0xc
call fcn.004c5590
mov ecx, dword [ebp - 0x1d058]
add esp, 0x20
test ecx, ecx
je 0x4af286
cmp ecx, 0xffffffff
je 0x4af286
call fcn.0041cc70
mov ecx, dword [ebp - 0x1d054]
test ecx, ecx
je 0x4af29a
cmp ecx, 0xffffffff
je 0x4af29a
call fcn.0041cc70
lea ecx, [ebp - 0x1d044]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526b10
lea ecx, [ebp - 0xe4c]
call fcn.004c6fd0
mov ecx, dword [ebp - 0x1d05c]
mov edx, dword [ebp - 0x1d060]
mov eax, dword [eax]
mov ecx, dword [ecx + edx*4]
nop dword [eax + eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4af2f6
test dx, dx
je 0x4af2f2
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4af2f6
add ecx, 4
add eax, 4
test dx, dx
jne 0x4af2d0
xor edi, edi
jmp 0x4af2fb
sbb edi, edi
or edi, 1
lea ecx, [ebp - 0xe4c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov eax, dword [ebp - 0x1d040]
test edi, edi
mov edi, dword [ebp - 0x1d05c]
mov ecx, 1
movzx eax, al
cmove eax, ecx
mov dword [ebp - 0x1d040], eax
mov eax, dword [ebp - 0x1d060]
inc eax
mov dword [ebp - 0x1d060], eax
cmp eax, dword [ebp - 0xe80]
jl 0x4ae890
mov ecx, edi
call fcn.004d4e10
mov eax, dword [esi + 0x640]
test eax, eax
jne 0x4af47c
push pe_nt_image_headers32
push eax
lea eax, [ebp - 0x120]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x124], 0x114
lea ecx, [ebp - 0x124]
call fcn.004fc980
cmp dword [ebp - 0x120], 5
ja 0x4af391
mov eax, 1
jmp 0x4af476
lea eax, [ebp - 0x1d044]
mov dword [ebp - 0xe50], 0
push eax
sub esp, 0x18
mov dword [ebp - 0x1d044], 0
mov dword [ebp - 0xe60], 0
mov word [ebp - 0xe5c], 0x500
push 0x220
push ecx
lea ecx, [ebp - 0xe60]
call fcn.0049feb0
add esp, 0x24
test eax, eax
je 0x4af461
mov eax, dword [ebp - 0x1d044]
lea ecx, [ebp - 0xe4c]
mov edx, 0x5297d0
mov dword [ebp - 0x1d06c], eax
call fcn.004c6fd0
push dword [eax]
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea ecx, [ebp - 0xe4c]
mov edi, eax
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
test edi, edi
je 0x4af461
mov edx, 0x52f4d0
lea ecx, [ebp - 0x1d064]
call fcn.00509d60
push dword [eax]
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea ecx, [ebp - 0x1d064]
mov dword [ebp - 0x1d070], eax
call dword [sym.imp.mfc140u.dll_Ordinal_1046]
mov eax, dword [ebp - 0x1d070]
test eax, eax
je 0x4af45a
lea ecx, [ebp - 0xe50]
push ecx
push dword [ebp - 0x1d06c]
push 0
call eax
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ecx, dword [ebp - 0x1d044]
test ecx, ecx
je 0x4af470
call fcn.0043b570
mov eax, dword [ebp - 0xe50]
mov dword [esi + 0x640], eax
cmp byte [ebp - 0x1d040], 0
je 0x4af86a
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea edx, [ebp - 0x218]
push 0x26
call fcn.004d4cb0
add esp, 8
lea ecx, [ebp - 0xe4c]
call fcn.00486260
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x218]
mov edx, dword [eax]
call fcn.0042ecb0
lea ecx, [ebp - 0xe4c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea edx, [ebp - 0x218]
call fcn.00498400
push 0x208
lea eax, [ebp - 0x830]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea edx, [ebp - 0x830]
push 0x1c
call fcn.004d4cb0
add esp, 8
lea ecx, [ebp - 0xe4c]
call fcn.00486260
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x830]
mov edx, dword [eax]
call fcn.0042ecb0
lea ecx, [ebp - 0xe4c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push 1
push ecx
lea eax, [ebp - 0x218]
mov dword [ebp - 0xe4c], esp
mov ecx, esp
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
push ecx
lea eax, [ebp - 0x830]
mov byte [ebp - 4], 0x1b
mov ecx, esp
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
mov ecx, esi
mov byte [ebp - 4], 0xa
call fcn.004fb6c0
push 0x208
lea eax, [ebp - 0x628]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea edx, [ebp - 0x628]
push 0x23
call fcn.004d4cb0
add esp, 8
lea ecx, [ebp - 0xe4c]
call fcn.004864d0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x628]
mov edx, dword [eax]
call fcn.0042ecb0
lea ecx, [ebp - 0xe4c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea edx, [ebp - 0x628]
call fcn.00498400
push 0x208
lea eax, [ebp - 0x420]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea edx, [ebp - 0x420]
push 0x1c
call fcn.004d4cb0
add esp, 8
lea ecx, [ebp - 0xe4c]
call fcn.004864d0
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x420]
mov edx, dword [eax]
call fcn.0042ecb0
lea ecx, [ebp - 0xe4c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x524494
lea ecx, [ebp - 0xe60]
call fcn.004c6fd0
mov dword [ebp - 0x1d064], eax
lea ecx, [ebp - 0x1d06c]
mov byte [ebp - 4], 0x1e
call fcn.004864d0
mov dword [ebp - 0xe4c], eax
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0x1d070]
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
mov edi, eax
mov ecx, edi
mov byte [ebp - 4], 0x21
call dword [sym.imp.mfc140u.dll_Ordinal_5921]
push eax
lea ecx, [ebp - 0xe58]
call dword [sym.imp.mfc140u.dll_Ordinal_285]
mov ecx, dword [edi]
push 1
mov dword [ebp - 0xe50], eax
mov eax, dword [ebp - 0x1d068]
push 0x51b4bc
push dword [ecx - 0xc]
or eax, 2
mov dword [ebp - 0x1d068], eax
mov dword [ebp - 0x1d074], eax
lea eax, [ebp - 0xe58]
push ecx
push eax
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::Concatenate]
add esp, 0x14
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0xe50]
call dword [sym.imp.mfc140u.dll_Ordinal_5921]
push eax
lea ecx, [ebp - 0xe54]
call dword [sym.imp.mfc140u.dll_Ordinal_285]
mov ecx, dword [ebp - 0xe4c]
mov edi, eax
mov eax, dword [ebp - 0x1d068]
or eax, 4
mov dword [ebp - 0x1d074], eax
mov ecx, dword [ecx]
mov eax, dword [ebp - 0xe50]
push dword [ecx - 0xc]
mov edx, dword [eax]
lea eax, [ebp - 0xe54]
push ecx
push dword [edx - 0xc]
push edx
push eax
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::Concatenate]
push dword [ebp - 0x1d064]
mov edx, edi
lea ecx, [ebp - 0x1d040]
call fcn.0045ae20
add esp, 0x18
lea ecx, [ebp - 0xe54]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe58]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0x1d070]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0x1d06c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe60]
mov byte [ebp - 4], 0x28
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push 0
push ecx
lea eax, [ebp - 0x628]
mov dword [ebp - 0xe4c], esp
mov ecx, esp
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
push ecx
lea eax, [ebp - 0x420]
mov byte [ebp - 4], 0x29
mov ecx, esp
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
mov ecx, esi
mov byte [ebp - 4], 0x28
call fcn.004fb6c0
push ecx
lea eax, [ebp - 0x218]
mov ecx, esp
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
call fcn.00441df0
push ecx
lea eax, [ebp - 0x1d040]
mov dword [ebp - 0xe4c], esp
mov ecx, esp
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__19]
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x2a
call fcn.004864d0
mov byte [ebp - 4], 0x28
call fcn.004adc20
mov ecx, dword [esi + 0x628]
call fcn.0041cc70
mov edx, 0x526b10
lea ecx, [ebp - 0x1d078]
call fcn.004c6fd0
push 0x51a9b8
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xe64]
push dword [eax]
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__13]
lea ecx, [ebp - 0x1d078]
mov byte [ebp - 4], 0x28
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push 0x38
lea eax, [ebp - 0xec8]
mov dword [ebp - 0xecc], 0x3c
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [ebp - 0x1d040]
add esp, 0xc
mov dword [ebp - 0xebc], eax
mov eax, dword [ebp - 0xe64]
lea ecx, [ebp - 0xecc]
mov dword [ebp - 0xeb8], eax
mov dword [ebp - 0xeb0], 1
call fcn.004500e0
lea ecx, [ebp - 0x1d040]
jmp 0x4aff7a
test eax, eax
je 0x4af941
cmp byte [esi + 0xdc], 0
jne 0x4af94a
push 0x208
lea eax, [ebp - 0x420]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
push 0x104
lea edx, [ebp - 0x420]
call fcn.0048c130
add esp, 0x10
lea ecx, [ebp - 0xe64]
push 0x5239c8
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::Append_1]
mov edx, 0x526b10
lea ecx, [ebp - 0xe4c]
call fcn.004c6fd0
push eax
lea ecx, [ebp - 0xe64]
mov byte [ebp - 4], 0x2c
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::Append]
lea ecx, [ebp - 0xe4c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov ecx, dword [esi + 0x628]
call fcn.0041cc70
push 0x38
lea eax, [ebp - 0xec8]
mov dword [ebp - 0xecc], 0x3c
push 0
push eax
call sub.VCRUNTIME140.dll_memset
lea eax, [ebp - 0x420]
mov dword [ebp - 0xeb0], 1
add esp, 0xc
mov dword [ebp - 0xebc], eax
mov eax, dword [ebp - 0xe64]
lea ecx, [ebp - 0xecc]
mov dword [ebp - 0xeb8], eax
call fcn.004500e0
jmp 0x4aff80
cmp byte [esi + 0xdc], 0
je 0x4af9b1
push 0x208
lea eax, [ebp - 0x420]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea edx, [ebp - 0x420]
push 0x1c
call fcn.004d4cb0
add esp, 8
lea ecx, [ebp - 0xe4c]
call fcn.004864d0
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x420]
mov edx, dword [eax]
call fcn.0042ecb0
lea ecx, [ebp - 0xe4c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push ecx
lea eax, [ebp - 0x420]
mov ecx, esp
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
call fcn.004886a0
mov ecx, esi
call fcn.0043c8f0
test al, al
je 0x4af9c6
mov dword [esi + 0x62c], 1
cmp dword [esi + 0x640], 0
jne 0x4afa81
cmp dword [esi + 0x63c], 0
jne 0x4afa81
cmp dword [esi + 0x62c], 0
jne 0x4afa81
push 0x104
lea edx, [ebp - 0x420]
call fcn.0048c130
add esp, 4
test eax, eax
je 0x4afa81
push 0x38
lea eax, [ebp - 0xec8]
mov dword [ebp - 0xecc], 0x3c
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [0x56d798]
lea ecx, [ebp - 0xe4c]
add esp, 0xc
mov dword [ebp - 0xec0], eax
lea eax, [ebp - 0x420]
mov edx, 0x5269cc
mov dword [ebp - 0xebc], eax
call fcn.004c6fd0
lea ecx, [ebp - 0xe4c]
mov eax, dword [eax]
mov dword [ebp - 0xeb8], eax
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xecc]
mov dword [ebp - 0xeb0], 1
call fcn.004500e0
mov ecx, dword [esi + 0x628]
call fcn.0041cc70
jmp 0x4aff80
mov ecx, 0x56d2e4
call fcn.00428730
cmp eax, dword [0x56d710]
jge 0x4afad5
cmp eax, 0xffffffff
jle 0x4afad5
mov ecx, dword [0x56d70c]
mov dword [0x56d744], eax
mov edx, dword [ecx + eax*4]
mov ecx, edx
lea edi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4afab0
sub ecx, edi
sar ecx, 1
push ecx
push edx
mov ecx, 0x56d72c
call fcn.0045b530
mov ecx, 0x56d704
call fcn.004a1050
cmp byte [esi + 0x120], 0
jne 0x4afc43
mov dword [esi + 0x128], 0
lea ecx, [esi + 0x108]
mov word [esi + 0x144], 0x101
mov dword [esi + 0x14c], 1
mov word [esi + 0x168], 0x101
mov dword [esi + 0x170], 0
mov word [esi + 0x18c], 0x101
mov dword [esi + 0x194], 0
mov word [esi + 0x1b0], 0x101
mov dword [esi + 0x200], 1
mov word [esi + 0x21c], 0x101
mov dword [esi + 0x224], 1
mov word [esi + 0x240], 0x101
mov dword [esi + 0x248], 1
mov word [esi + 0x264], 0x101
mov dword [esi + 0x26c], 1
mov word [esi + 0x288], 0x101
mov dword [esi + 0x290], 1
mov word [esi + 0x2ac], 0x101
mov dword [esi + 0x2b4], 1
mov word [esi + 0x2d0], 0x101
mov dword [esi + 0x2d8], 1
mov word [esi + 0x2f4], 0x101
mov dword [esi + 0x2fc], 1
mov word [esi + 0x318], 0x101
mov dword [esi + 0x320], 1
mov word [esi + 0x33c], 0x101
mov dword [esi + 0x344], 1
mov word [esi + 0x360], 0x101
mov dword [esi + 0x368], 1
mov word [esi + 0x384], 0x101
mov dword [esi + 0x1dc], 1
mov word [esi + 0x1f8], 0x101
mov dword [esi + 0x3b0], 0
mov word [esi + 0x3cc], 0x101
mov dword [esi + 0x4ec], 2
mov word [esi + 0x508], 0x101
call fcn.0049ad50
lea eax, [ebp - 0x1d048]
mov dword [ebp - 0x1d048], 0xffffffff
push eax
call fcn.0041c600
mov edx, 0x20
mov ecx, eax
call fcn.0040a210
mov ecx, dword [ebp - 0x1d048]
call fcn.0049dd20
mov ecx, dword [ebp - 0x1d048]
call fcn.0041cc70
push 0x208
lea eax, [ebp - 0xa38]
mov dword [ebp - 0xe88], 0x270f
push 0
push eax
call sub.VCRUNTIME140.dll_memset
push 0x104
lea edx, [ebp - 0xa38]
call fcn.0048c130
add esp, 0x14
lea ecx, [ebp - 0xa38]
call fcn.0044ad90
push eax
lea ecx, [ebp - 0xe84]
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__18]
mov edx, 0x526730
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0xe4c]
call fcn.004c6fd0
push 4
lea edx, [ebp - 0xe88]
mov byte [ebp - 4], 0x2f
push edx
mov edx, dword [eax]
mov ecx, GetEffectiveClientRect
push 4
push dword [ebp - 0xe84]
call fcn.004f5f00
add esp, 0x10
lea ecx, [ebp - 0xe4c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe54]
mov byte [ebp - 4], 0x30
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov dword [ebp - 0x1d064], eax
xor ecx, ecx
mov eax, dword [ebp - 0x1d068]
or eax, 0x10
mov dword [ebp - 0x1d068], eax
mov dword [ebp - 0x1d074], eax
call fcn.00403470
mov dword [ebp - 0xe4c], eax
test eax, eax
je 0x4afd95
mov edx, 0x58
mov ecx, eax
call fcn.004ff710
mov edx, dword [ebp - 0xe4c]
xor ecx, ecx
mov edi, eax
call fcn.00427df0
mov edx, 0x523c24
lea ecx, [ebp - 0xe4c]
call fcn.004c6fd0
push edi
mov byte [ebp - 4], 0x31
push dword [eax]
lea eax, [ebp - 0xe54]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
add esp, 0xc
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0xe4c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526b70
lea ecx, [ebp - 0x1d070]
call fcn.004c6fd0
mov edi, eax
mov ecx, edi
mov byte [ebp - 4], 0x33
call dword [sym.imp.mfc140u.dll_Ordinal_5921]
push eax
lea ecx, [ebp - 0xe50]
call dword [sym.imp.mfc140u.dll_Ordinal_285]
mov ecx, dword [ebp - 0x1d064]
mov edx, dword [edi]
mov dword [ebp - 0xe4c], eax
mov eax, dword [ebp - 0x1d068]
mov ecx, dword [ecx]
or eax, 0x20
mov dword [ebp - 0x1d074], eax
lea eax, [ebp - 0xe50]
push dword [ecx - 0xc]
push ecx
push dword [edx - 0xc]
push edx
push eax
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::Concatenate]
mov eax, dword [ebp - 0xe4c]
add esp, 0x14
mov ecx, esi
push 0
push dword [eax]
call fcn.004bd250
lea ecx, [ebp - 0xe50]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0x1d070]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe54]
mov byte [ebp - 4], 0x2e
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526b80
lea ecx, [ebp - 0x1d064]
call fcn.004c6fd0
mov edi, dword [sym.imp.GDI32.dll_AddFontResourceW]
push dword [eax]
call edi
lea ecx, [ebp - 0x1d064]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526bb0
lea ecx, [ebp - 0x1d06c]
call fcn.004c6fd0
push dword [eax]
call edi
lea ecx, [ebp - 0x1d06c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526be0
lea ecx, [ebp - 0xe60]
call fcn.004c6fd0
push dword [eax]
call edi
lea ecx, [ebp - 0xe60]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov edx, 0x526c10
lea ecx, [ebp - 0x1d078]
call fcn.004c6fd0
push dword [eax]
call edi
lea ecx, [ebp - 0x1d078]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push 0x1c168
lea eax, [ebp - 0x1d03c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea ecx, [ebp - 0x1d03c]
call fcn.0049e250
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x1d03c]
cmp dword [0x56d76c], 0
je 0x4aff1b
push 0
push 0x66
call dword [sym.imp.mfc140u.dll_CDialog::Create]
test eax, eax
je 0x4aff2a
push 0
lea ecx, [ebp - 0x1d03c]
call dword [sym.imp.mfc140u.dll_CWnd::ShowWindow]
lea eax, [ebp - 0x1d03c]
push 0
mov ecx, eax
mov dword [esi + 0x20], eax
call dword [sym.imp.mfc140u.dll_CWnd::RunModalLoop]
jmp 0x4aff2a
lea eax, [ebp - 0x1d03c]
mov dword [esi + 0x20], eax
call dword [sym.imp.mfc140u.dll_CDialog::DoModal]
mov ecx, dword [esi + 0xe0]
test ecx, ecx
je 0x4aff5e
mov edx, 0x3e8
mov byte [esi + 0xe4], 0
call fcn.004ba5f0
test eax, eax
je 0x4aff54
mov ecx, dword [esi + 0xe0]
call fcn.0043b000
mov dword [esi + 0xe0], 0
mov ecx, dword [esi + 0x628]
call fcn.0041cc70
lea ecx, [ebp - 0x1d03c]
call fcn.00408f60
lea ecx, [ebp - 0xe84]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe64]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe78]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0xe7c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00482396
mov esp, ebp
pop ebp
ret