Function at 0x4623c0
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x4746cd
mov eax, dword fs:[0]
push eax
sub esp, 0x8b4
mov eax, dword [0x48c9dc]
xor eax, esp
mov dword [esp + 0x8b0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x48c9dc]
xor eax, esp
push eax
lea eax, [esp + 0x8c8]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x40], esi
mov dword [esp + 0x8d0], 0
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea eax, [esp + 0x8d8]
push eax
mov ecx, esi
mov byte [esp + 0x8d4], 1
call dword [sym.imp.MFC80.DLL_Ordinal_781]
push 0x1c
call sub.MFC80.DLL_Ordinal_762
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x8d0], 2
je 0x462451
push 0xa
mov ecx, eax
call sub.MFC80.DLL_Ordinal_427
mov ebx, eax
jmp 0x462453
xor ebx, ebx
push 0xa
lea ecx, [esp + 0x28]
mov byte [esp + 0x8d4], 1
mov dword [esi + 0xc], ebx
call sub.MFC80.DLL_Ordinal_558
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
push str.functionprops
lea ecx, [esp + 0x20]
mov byte [esp + 0x8d4], 4
call dword [sym.imp.MFC80.DLL_Ordinal_784]
mov eax, dword [esi]
mov edx, dword [esp + 0x1c]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push eax
push 0x800
lea ecx, [esp + 0xcc]
push ecx
push 0x478184
push 0
push edx
call edi
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0xc8]
call fcn.00461b30
add esp, 4
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
mov ebp, dword [esp + 0x28]
test ebp, ebp
mov byte [esp + 0x8d0], 7
je 0x462587
test ebp, ebp
mov eax, ebp
je 0x4625e7
mov ebp, dword [ebp]
add eax, 8
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_781]
mov eax, dword [esi]
mov edx, dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x20]
push 0x80
lea ecx, [esp + 0x4c]
push ecx
push 0x478180
push edx
push eax
call edi
lea ecx, [esp + 0x44]
push ecx
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_784]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
push 0x47817c
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_1482]
test eax, eax
mov eax, dword [esp + 0x14]
mov ecx, ebx
jne 0x46256c
push eax
jmp 0x462571
mov edx, dword [esp + 0x18]
push edx
push eax
call sub.MFC80.DLL_Ordinal_870
mov ecx, eax
call dword [sym.imp.MFC80.DLL_Ordinal_784]
test ebp, ebp
jne 0x4624f4
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x24]
mov byte [esp + 0x8d0], 1
call sub.MFC80.DLL_Ordinal_746
push 0x1c
call sub.MFC80.DLL_Ordinal_762
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x8d0], 8
je 0x4625ec
push 0xa
mov ecx, eax
call sub.MFC80.DLL_Ordinal_427
mov ebx, eax
jmp 0x4625ee
call fcn.0043f2d6
xor ebx, ebx
push 0xa
lea ecx, [esp + 0x28]
mov byte [esp + 0x8d4], 1
mov dword [esi + 8], ebx
call sub.MFC80.DLL_Ordinal_558
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
push str.ComponentInstanceProps
lea ecx, [esp + 0x20]
mov byte [esp + 0x8d4], 0xa
call dword [sym.imp.MFC80.DLL_Ordinal_784]
mov eax, dword [esi]
mov edx, dword [esp + 0x1c]
push eax
push 0x800
lea ecx, [esp + 0xcc]
push ecx
push 0x478184
push 0
push edx
call edi
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0xc8]
call fcn.00461b30
add esp, 4
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
mov ebp, dword [esp + 0x28]
test ebp, ebp
mov byte [esp + 0x8d0], 0xd
je 0x46271c
test ebp, ebp
mov eax, ebp
je 0x4625e7
mov ebp, dword [ebp]
add eax, 8
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_781]
mov eax, dword [esi]
mov edx, dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x20]
push 0x80
lea ecx, [esp + 0x4c]
push ecx
push 0x478180
push edx
push eax
call edi
lea ecx, [esp + 0x44]
push ecx
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_784]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
push 0x47817c
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_1482]
test eax, eax
mov eax, dword [esp + 0x14]
mov ecx, ebx
jne 0x462701
push eax
jmp 0x462706
mov edx, dword [esp + 0x18]
push edx
push eax
call sub.MFC80.DLL_Ordinal_870
mov ecx, eax
call dword [sym.imp.MFC80.DLL_Ordinal_784]
test ebp, ebp
jne 0x462689
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x24]
mov byte [esp + 0x8d0], 1
call sub.MFC80.DLL_Ordinal_746
push 0x1c
call sub.MFC80.DLL_Ordinal_762
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x8d0], 0xe
je 0x46277c
push 0xa
mov ecx, eax
call sub.MFC80.DLL_Ordinal_427
mov ebx, eax
jmp 0x46277e
xor ebx, ebx
push 0xa
lea ecx, [esp + 0x28]
mov byte [esp + 0x8d4], 1
mov dword [esi + 4], ebx
call sub.MFC80.DLL_Ordinal_558
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
push str.ComponentDefinitionProps
lea ecx, [esp + 0x20]
mov byte [esp + 0x8d4], 0x10
call dword [sym.imp.MFC80.DLL_Ordinal_784]
mov eax, dword [esi]
mov edx, dword [esp + 0x1c]
push eax
push 0x800
lea ecx, [esp + 0xcc]
push ecx
push 0x478184
push 0
push edx
call edi
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0xc8]
call fcn.00461b30
add esp, 4
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
mov ebp, dword [esp + 0x28]
test ebp, ebp
mov byte [esp + 0x8d0], 0x13
je 0x4628ac
test ebp, ebp
mov eax, ebp
je 0x4625e7
mov ebp, dword [ebp]
add eax, 8
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_781]
mov eax, dword [esi]
mov edx, dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x20]
push 0x80
lea ecx, [esp + 0x4c]
push ecx
push 0x478180
push edx
push eax
call edi
lea ecx, [esp + 0x44]
push ecx
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_784]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
push 0x47817c
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_1482]
test eax, eax
mov eax, dword [esp + 0x14]
mov ecx, ebx
jne 0x462891
push eax
jmp 0x462896
mov edx, dword [esp + 0x18]
push edx
push eax
call sub.MFC80.DLL_Ordinal_870
mov ecx, eax
call dword [sym.imp.MFC80.DLL_Ordinal_784]
test ebp, ebp
jne 0x462819
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x24]
mov byte [esp + 0x8d0], 1
call sub.MFC80.DLL_Ordinal_746
push 0x1c
call sub.MFC80.DLL_Ordinal_762
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x8d0], 0x14
je 0x46290c
push 0xa
mov ecx, eax
call sub.MFC80.DLL_Ordinal_427
mov ebx, eax
jmp 0x46290e
xor ebx, ebx
push 0xa
lea ecx, [esp + 0x28]
mov byte [esp + 0x8d4], 1
mov dword [esi + 0x10], ebx
call sub.MFC80.DLL_Ordinal_558
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
push str.netprops
lea ecx, [esp + 0x20]
mov byte [esp + 0x8d4], 0x16
call dword [sym.imp.MFC80.DLL_Ordinal_784]
mov eax, dword [esi]
mov edx, dword [esp + 0x1c]
push eax
push 0x800
lea ecx, [esp + 0xcc]
push ecx
push 0x478184
push 0
push edx
call edi
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0xc8]
call fcn.00461b30
add esp, 4
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
mov ebp, dword [esp + 0x28]
test ebp, ebp
mov byte [esp + 0x8d0], 0x19
je 0x462a3c
test ebp, ebp
mov eax, ebp
je 0x4625e7
mov ebp, dword [ebp]
add eax, 8
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_781]
mov eax, dword [esi]
mov edx, dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x20]
push 0x80
lea ecx, [esp + 0x4c]
push ecx
push 0x478180
push edx
push eax
call edi
lea ecx, [esp + 0x44]
push ecx
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_784]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
push 0x47817c
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_1482]
test eax, eax
mov eax, dword [esp + 0x14]
mov ecx, ebx
jne 0x462a21
push eax
jmp 0x462a26
mov edx, dword [esp + 0x18]
push edx
push eax
call sub.MFC80.DLL_Ordinal_870
mov ecx, eax
call dword [sym.imp.MFC80.DLL_Ordinal_784]
test ebp, ebp
jne 0x4629a9
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x24]
mov byte [esp + 0x8d0], 1
call sub.MFC80.DLL_Ordinal_746
push 0x1c
call sub.MFC80.DLL_Ordinal_762
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x8d0], 0x1a
je 0x462a9c
push 0xa
mov ecx, eax
call sub.MFC80.DLL_Ordinal_427
mov ebx, eax
jmp 0x462a9e
xor ebx, ebx
push 0xa
lea ecx, [esp + 0x28]
mov byte [esp + 0x8d4], 1
mov dword [esi + 0x14], ebx
call sub.MFC80.DLL_Ordinal_558
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
push str.pinprops
lea ecx, [esp + 0x20]
mov byte [esp + 0x8d4], 0x1c
call dword [sym.imp.MFC80.DLL_Ordinal_784]
mov eax, dword [esi]
mov edx, dword [esp + 0x1c]
push eax
push 0x800
lea ecx, [esp + 0xcc]
push ecx
push 0x478184
push 0
push edx
call edi
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0xc8]
call fcn.00461b30
add esp, 4
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_310]
mov ebp, dword [esp + 0x28]
test ebp, ebp
mov byte [esp + 0x8d0], 0x1f
je 0x462bcc
test ebp, ebp
mov eax, ebp
je 0x4625e7
mov ebp, dword [ebp]
add eax, 8
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_781]
mov eax, dword [esi]
mov edx, dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x20]
push 0x80
lea ecx, [esp + 0x4c]
push ecx
push 0x478180
push edx
push eax
call edi
lea ecx, [esp + 0x44]
push ecx
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_784]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_4085]
push 0x47817c
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_1482]
test eax, eax
mov eax, dword [esp + 0x14]
mov ecx, ebx
jne 0x462bb1
push eax
jmp 0x462bb6
mov edx, dword [esp + 0x18]
push edx
push eax
call sub.MFC80.DLL_Ordinal_870
mov ecx, eax
call dword [sym.imp.MFC80.DLL_Ordinal_784]
test ebp, ebp
jne 0x462b39
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
lea ecx, [esp + 0x24]
mov byte [esp + 0x8d0], 1
call sub.MFC80.DLL_Ordinal_746
lea ecx, [esp + 0x8d8]
call dword [sym.imp.MFC80.DLL_Ordinal_578]
mov eax, esi
mov ecx, dword [esp + 0x8c8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x8b0]
xor ecx, esp
call fcn.0043f646
add esp, 0x8c0
ret 4