Function at 0x520a50
Capabilities:
Terminate process

Disassembly:
push 0xffffffffffffffff
push 0x58c46c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, dword [esp + 0x14]
push ebx
push ebp
push esi
push edi
mov esi, ecx
push eax
push 0x89
mov dword [esp + 0x18], esi
call sub.MFC42.DLL_CDialog::CDialog_1
xor ebp, ebp
mov dword [esi + 0x64], 0x591b10
mov dword [esp + 0x1c], ebp
mov dword [esi + 0x68], ebp
lea ecx, [esi + 0x88]
mov byte [esp + 0x1c], 1
call fcn.0051e780
lea ecx, [esi + 0x9c]
call fcn.0051e780
lea ecx, [esi + 0xa8]
call fcn.0051e780
lea ecx, [esi + 0xb4]
call fcn.0049b670
push ebp
lea ecx, [esi + 0x1d0]
mov byte [esp + 0x20], 2
call fcn.005017c0
lea edi, [esi + 0x290]
mov dword [edi], 0x59765c
mov dword [edi + 4], ebp
mov dword [edi + 0x10], ebp
mov dword [edi + 0xc], ebp
mov dword [edi + 8], ebp
lea ebx, [esi + 0x2a4]
mov dword [ebx], 0x5934ec
mov dword [ebx + 4], ebp
mov dword [ebx + 0x10], ebp
mov dword [ebx + 0xc], ebp
mov dword [ebx + 8], ebp
mov dword [esi + 0x2b8], 0x5934ec
mov dword [esi + 0x2bc], ebp
mov dword [esi + 0x2c8], ebp
mov dword [esi + 0x2c4], ebp
mov dword [esi + 0x2c0], ebp
push ebp
lea ecx, [esi + 0x2d0]
mov byte [esp + 0x20], 6
call fcn.005157c0
lea ecx, [esi + 0x518]
mov byte [esp + 0x1c], 7
call sub.MFC42.DLL_CString::CString_5
mov dword [esi + 0x51c], 0x597634
mov dword [esi + 0x520], ebp
mov dword [esi + 0x52c], ebp
mov dword [esi + 0x528], ebp
mov dword [esi + 0x524], ebp
lea ecx, [esi + 0x530]
push 0xa
mov byte [esp + 0x20], 9
call sub.MFC42.DLL_CMapStringToString::CMapStringToString
lea ecx, [esi + 0x54c]
mov byte [esp + 0x1c], 0xa
call fcn.004a4540
mov dword [esi + 0x604], 0x597648
mov dword [esi + 0x608], ebp
mov dword [esi + 0x614], ebp
mov dword [esi + 0x610], ebp
mov dword [esi + 0x60c], ebp
lea ecx, [esi + 0x618]
mov byte [esp + 0x1c], 0xc
call fcn.004b1620
lea ecx, [esi + 0x73c]
mov byte [esp + 0x1c], 0xd
call fcn.004d0760
lea ecx, [esi + 0x7a0]
mov byte [esp + 0x1c], 0xe
call fcn.004d0760
lea ecx, [esi + 0x804]
mov byte [esp + 0x1c], 0xf
call fcn.004d0760
lea ecx, [esi + 0x868]
mov byte [esp + 0x1c], 0x10
call fcn.004d0760
lea ecx, [esi + 0x8cc]
mov byte [esp + 0x1c], 0x11
call fcn.004d0760
lea ecx, [esi + 0x930]
mov byte [esp + 0x1c], 0x12
call fcn.004d0760
lea ecx, [esi + 0x994]
mov byte [esp + 0x1c], 0x13
call fcn.004d0760
lea ecx, [esi + 0x9f8]
mov byte [esp + 0x1c], 0x14
call fcn.004d0760
lea ecx, [esi + 0xa5c]
mov byte [esp + 0x1c], 0x15
call fcn.00493830
lea ecx, [esi + 0xb40]
mov byte [esp + 0x1c], 0x16
call sub.MFC42.DLL_CString::CString_5
lea ecx, [esi + 0xb48]
mov byte [esp + 0x1c], 0x17
call sub.MFC42.DLL_CToolTipCtrl::CToolTipCtrl
push 0xffffffffffffffff
push ebp
mov ecx, edi
mov byte [esp + 0x24], 0x18
mov dword [esi], 0x5b9a10
call fcn.004374d0
push 0xffffffffffffffff
push ebp
mov ecx, ebx
call fcn.004374d0
push 0xffffffffffffffff
push ebp
lea ecx, [esi + 0x2b8]
call fcn.004374d0
mov dword [esi + 0x1c8], ebp
mov dword [esi + 0x1cc], ebp
call sub.MFC42.DLL_AfxGetModuleState
mov eax, dword [eax + 4]
mov ebx, 1
push 0x5f14
mov edi, dword [eax + 0x1bc]
mov dword [esi + 0xb4], ebx
mov dword [esi + 0xb8], ebx
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x24], eax
cmp eax, ebp
mov byte [esp + 0x1c], 0x19
je 0x520ced
mov ecx, dword [esi + 0xd0]
push ecx
push ebp
mov ecx, eax
call fcn.00407610
jmp 0x520cef
xor eax, eax
mov byte [esp + 0x1c], 0x18
mov dword [esi + 0x78], eax
call sub.MFC42.DLL_AfxGetModuleState
mov eax, dword [eax + 4]
mov edx, dword [esi + 0x78]
mov dword [eax + 0x140], edx
mov ecx, dword [esi + 0x78]
call fcn.00407dc0
cmp edi, 0xa
jl 0x520d25
cmp edi, 0xbfff
jge 0x520d25
mov dword [esi + 0xd0], edi
jmp 0x520d34
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 0x1f8]
mov dword [esi + 0xd0], ecx
mov eax, dword [esi + 0xd0]
cmp eax, 0xa
jl 0x520d46
cmp eax, 0xbfff
jl 0x520d50
mov dword [esi + 0xd0], 0x979
mov edx, dword [esi + 0x78]
mov eax, dword [esi + 0xd0]
push 0xac
mov dword [edx + 0x1f8], eax
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x24], eax
cmp eax, ebp
mov byte [esp + 0x1c], 0x1a
je 0x520d8e
mov ecx, dword [esi + 0x78]
mov edx, dword [esi + 0xd0]
push ecx
push edx
push ebp
mov ecx, eax
call fcn.0049bab0
jmp 0x520d90
xor eax, eax
mov dword [esi + 0x6c], eax
mov ecx, dword [eax + 0x10]
cmp ecx, ebp
mov byte [esp + 0x1c], 0x18
jne 0x520dac
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_ExitProcess]
call sub.MFC42.DLL_AfxGetModuleState
mov eax, dword [eax + 4]
cmp dword [eax + 0x1e8], ebp
jle 0x520dc4
mov ecx, dword [esi + 0x6c]
call fcn.0049d590
push 4
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x24], eax
cmp eax, ebp
mov byte [esp + 0x1c], 0x1b
je 0x520de8
mov ecx, dword [esi + 0x78]
push ecx
mov ecx, eax
call fcn.0049ba10
jmp 0x520dea
xor eax, eax
push 0x14
mov byte [esp + 0x20], 0x18
mov dword [esi + 0x70], eax
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x24], eax
cmp eax, ebp
mov byte [esp + 0x1c], 0x1c
je 0x520e16
mov edx, dword [esi + 0x78]
mov ecx, eax
push edx
call fcn.0049dd40
jmp 0x520e18
xor eax, eax
push 0x1c
mov byte [esp + 0x20], 0x18
mov dword [esi + 0x74], eax
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x24], eax
cmp eax, ebp
mov byte [esp + 0x1c], 0x1d
je 0x520e44
push 0x10
push 0x64
mov ecx, eax
call fcn.0051e830
jmp 0x520e46
xor eax, eax
mov byte [esp + 0x1c], 0x18
mov dword [esi + 0x7c], eax
call sub.MFC42.DLL_AfxGetModuleState
mov ecx, dword [esi + 0x78]
mov eax, dword [eax + 4]
mov edx, dword [esi + 0x74]
push ecx
push edx
mov ecx, eax
call fcn.004766a0
push 0x5e049c
push 0x20
push ebp
push ebp
push ebp
push ebx
push ebp
push ebp
push ebp
push 0x190
push ebp
mov ecx, 0x30
xor eax, eax
lea edi, [esi + 0xfc]
push ebp
mov dword [esi + 0xd8], ebp
mov dword [esi + 0xdc], ebp
push ebp
rep stosd dword es:[edi], eax
push 0xc
mov dword [esi + 0x1bc], ebp
mov dword [esi + 0xe0], ebp
mov dword [esi + 0xe4], ebp
mov dword [esi + 0xe8], ebp
mov dword [esi + 0xf0], ebp
mov dword [esi + 0xf4], ebx
mov dword [esi + 0x1c0], ebp
call dword [sym.imp.GDI32.dll_CreateFontA]
push eax
lea ecx, [esi + 0x64]
call sub.MFC42.DLL_CGdiObject::Attach
call sub.MFC42.DLL_AfxGetModuleState
mov eax, dword [eax + 4]
add eax, 0xfc
mov dword [esi + 0x94], eax
call sub.MFC42.DLL_AfxGetModuleState
mov ecx, dword [eax + 4]
push 0x5f3788
add ecx, 0xfc
mov dword [esi + 0x1c4], ebp
mov dword [esi + 0x98], ecx
lea ecx, [esi + 0x518]
mov dword [esi + 0xb44], ebp
mov dword [esi + 0x2cc], ebp
mov dword [esi + 0x510], ebp
mov dword [esi + 0x514], ebp
mov dword [esi + 0x508], ebp
mov dword [esi + 0x50c], ebp
call sub.MFC42.DLL_CString::operator_2
mov eax, dword [esi + 0x520]
cmp eax, ebp
je 0x520f4b
push eax
call sub.MFC42.DLL_operatordelete
add esp, 4
mov dword [esi + 0x520], ebp
push ebx
mov dword [esi + 0x528], ebp
mov dword [esi + 0x524], ebp
push 0xc8
lea ecx, [esi + 0x530]
mov dword [esi + 0x84], ebp
mov dword [esi + 0xba4], ebp
call sub.MFC42.DLL_CMapStringToString::InitHashTable
mov dword [esi + 0xb3c], ebp
mov dword [esi + 0x5fc], ebx
mov dword [esi + 0x600], ebp
mov ecx, dword [esp + 0x14]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x10
ret 4