Function at 0x4151ee
Capabilities:
Create service
Delete registry key
Delete service
Modify service
Set registry value

Disassembly:
mov eax, 0x4257f4
call sub.MSVCRT.dll__EH_prolog
sub esp, 0xf04
push ebx
mov dword [ebp - 0x34], ecx
push esi
push edi
lea ecx, [ebp - 0x14]
call fcn.00423918
xor ebx, ebx
lea ecx, [ebp - 0x10]
mov dword [ebp - 4], ebx
call fcn.00423918
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 1
call fcn.00423918
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00423918
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call fcn.00423918
push str.S2GDrv
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 4
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], 0x10
call sub.MFC42.DLL_CString::CString_1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call fcn.00423918
push str.S2G_Server
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 6
call sub.MFC42.DLL_CString::CString_1
mov esi, 0x430224
lea ecx, [ebp - 0x24]
push esi
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::operator_2
lea eax, [ebp - 0x18]
push 1
push eax
lea ecx, [ebp - 0x24]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 8
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
push esi
lea ecx, [ebp - 0x1c]
call sub.MFC42.DLL_CString::operator_2
lea eax, [ebp - 0x18]
push 3
push eax
lea ecx, [ebp - 0x1c]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 9
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
mov edi, 0x430220
lea eax, [ebp - 0x40]
push edi
push str.Intellution.
push eax
call sub.MFC42.DLL_operator_4
push 0x42f52c
push eax
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 0xa
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xb
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xa
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
push dword [ebp - 0x10]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x464]
push eax
call esi
push edi
lea eax, [ebp - 0x44]
push str.Intellution.
push eax
call sub.MFC42.DLL_operator_4
push str.Drv.
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xc
push eax
call sub.MFC42.DLL_operator_3
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xd
push ecx
push eax
lea eax, [ebp - 0x18]
push eax
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xe
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
push dword [ebp - 0x10]
lea eax, [ebp - 0x360]
push eax
call esi
push 0x430230
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::operator_2
push dword [ebp - 0x10]
lea eax, [ebp - 0x6f0]
push eax
call esi
push 0x42daac
lea eax, [ebp - 0x40]
push 0x430230
push eax
call sub.MFC42.DLL_operator_3
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xf
push ecx
push eax
lea eax, [ebp - 0x18]
push eax
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x10
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xf
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
push dword [ebp - 0x10]
lea eax, [ebp - 0x9fc]
push eax
call esi
push str.ps.dll
lea eax, [ebp - 0x18]
push edi
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x11
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
push dword [ebp - 0x10]
lea eax, [ebp - 0xd08]
push eax
call esi
push dword [0x43022c]
lea eax, [ebp - 0xe0c]
push eax
call esi
push dword [0x43022c]
lea eax, [ebp - 0xb00]
push eax
call esi
lea eax, [ebp - 0xb00]
push str.__Automation
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov edi, pe_nt_image_headers32
lea eax, [ebp - 0x25c]
push edi
push eax
push 0x4270e8
call fcn.00416af4
cmp eax, ebx
jge 0x4154d0
mov esi, 0x430238
push 0x9c46
mov ecx, esi
call sub.MFC42.DLL_CString::LoadStringA
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push 1
push ecx
mov byte [ebp - 4], 0x12
mov ecx, esp
mov dword [ebp - 0x34], esp
jmp 0x415d35
lea eax, [ebp - 0x1d8]
push str.CLSID_
push eax
call esi
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x1d8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0xd4]
push eax
call esi
lea eax, [ebp - 0x8f8]
push str.AppID_
push eax
call esi
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0x8f8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x4e8]
push edi
push eax
push 0x4270d8
call fcn.00416af4
cmp eax, ebx
jge 0x415569
mov esi, 0x430238
push 0x9c47
mov ecx, esi
call sub.MFC42.DLL_CString::LoadStringA
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push 1
push ecx
mov byte [ebp - 4], 0x13
mov ecx, esp
mov dword [ebp - 0x34], esp
jmp 0x415d35
lea eax, [ebp - 0x9fc]
push eax
lea eax, [ebp - 0x360]
push ebx
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x25c]
mov edi, str.CLSID
push eax
lea eax, [ebp - 0x360]
push edi
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x6f0]
push eax
lea eax, [ebp - 0x464]
push ebx
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x360]
push eax
lea eax, [ebp - 0x464]
push str.CurVer
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x464]
push edi
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x6f0]
push eax
lea eax, [ebp - 0x1d8]
push ebx
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x20]
push eax
push 0xf003f
lea eax, [ebp - 0x1d8]
push ebx
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x415a86
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [ebp - 0xd4]
push eax
call edi
push eax
lea eax, [ebp - 0xd4]
push eax
push 1
push ebx
push str.AppID
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push dword [ebp - 0x20]
test eax, eax
jne 0x4159f5
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp + 8], ebx
je 0x415814
lea eax, [ebp - 0x1d8]
push str.LocalServer32
push eax
lea eax, [ebp - 0xc04]
push 0x42f4cc
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0xc04]
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov eax, dword [0x42fdb0]
cmp dword [eax - 8], ebx
jne 0x4156db
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x4c], 0x110
jmp 0x41570d
push 0x42fdb0
lea eax, [ebp - 0x18]
push 0x42f4c8
push eax
call sub.MFC42.DLL_operator_4
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x14
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x18], eax
mov eax, dword [0x42fdb0]
cmp dword [eax - 8], ebx
je 0x415724
mov eax, dword [0x42fdb4]
mov dword [ebp - 0x40], eax
cmp dword [eax - 8], ebx
jne 0x415727
mov dword [ebp - 0x40], ebx
cmp dword [0x430148], ebx
jne 0x415739
mov dword [0x430148], 3
push 0xf003f
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
cmp eax, ebx
mov dword [ebp - 0x3c], eax
je 0x415a86
lea eax, [ebp - 0xe0c]
lea ecx, [ebp - 0x44]
push eax
call sub.MFC42.DLL_CString::CString_1
push str.__Service
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x15
call sub.MFC42.DLL_CString::operator_1
mov edi, 0xf01ff
push edi
push dword [ebp - 0x28]
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_OpenServiceA]
cmp eax, ebx
mov dword [ebp - 0x48], eax
je 0x4157aa
push dword [ebp - 0x30]
push dword [ebp - 0x40]
push dword [ebp - 0x18]
push ebx
push ebx
push ebx
push dword [ebp - 0x44]
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
call dword [sym.imp.ADVAPI32.dll_ChangeServiceConfigA]
test eax, eax
jmp 0x4157da
push dword [ebp - 0x40]
push dword [ebp - 0x18]
push str.RPCSS
push ebx
push ebx
push dword [ebp - 0x44]
push 1
push dword [0x430148]
push dword [ebp - 0x4c]
push edi
push dword [ebp - 0x30]
push dword [ebp - 0x28]
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_CreateServiceA]
mov dword [ebp - 0x48], eax
cmp eax, ebx
jne 0x4157ed
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
jmp 0x415a86
push dword [ebp - 0x48]
mov edi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call edi
push dword [ebp - 0x3c]
call edi
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
jmp 0x4158a0
lea eax, [ebp - 0xb00]
push eax
lea eax, [ebp - 0x1d8]
push str.LocalServer32
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
mov ecx, dword [ebp - 0x34]
call fcn.004164a0
test eax, eax
je 0x4158a0
push 0xf003f
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
cmp eax, ebx
mov dword [ebp - 0x3c], eax
je 0x415a86
push 0xf01ff
push dword [ebp - 0x28]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenServiceA]
cmp eax, ebx
mov dword [ebp - 0x48], eax
je 0x415897
push eax
call dword [sym.imp.ADVAPI32.dll_DeleteService]
push dword [ebp - 0x48]
test eax, eax
jne 0x415891
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call esi
push dword [ebp - 0x3c]
call esi
jmp 0x415a86
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push 0x42fd28
lea eax, [ebp - 0x1d8]
push str.NotInsertable
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x360]
push eax
lea eax, [ebp - 0x1d8]
push str.ProgID
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
push 0x42fd28
lea eax, [ebp - 0x1d8]
push str.Programmable
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x4e8]
push eax
lea eax, [ebp - 0x1d8]
push str.TypeLib
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x464]
push eax
lea eax, [ebp - 0x1d8]
push str.VersionIndependentProgID
push eax
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x9fc]
push eax
lea eax, [ebp - 0xd4]
push eax
push str.AppID
call fcn.004168ed
add esp, 0xc
test eax, eax
je 0x415a86
lea eax, [ebp - 0x20]
push eax
push 0xf003f
lea eax, [ebp - 0x8f8]
push ebx
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x415a86
cmp dword [ebp + 8], ebx
je 0x4159d0
push str.S2GDrv
call edi
push eax
push str.S2GDrv
push 1
push ebx
push str.LocalService
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
jne 0x4159f2
push str.__Service
call edi
push eax
push str.__Service
push 1
push ebx
push str.ServiceParameters
jmp 0x4159e5
push str.Interactive_User
call edi
push eax
push str.Interactive_User
push 1
push ebx
push str.RunAs
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
je 0x415a00
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x415a86
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [0x43022c]
push 0x5c
push eax
call dword [sym.imp.MSVCRT.dll__mbsrchr]
pop ecx
cmp eax, ebx
pop ecx
jne 0x415a24
mov eax, dword [0x43022c]
jmp 0x415a25
inc eax
mov dword [ebp + 8], eax
lea eax, [ebp - 0x7f4]
push str.AppID_
push eax
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x7f4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x7f4]
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyA]
test eax, eax
jne 0x415a86
lea eax, [ebp - 0xd4]
push eax
call edi
push eax
lea eax, [ebp - 0xd4]
push eax
push 1
push ebx
push str.AppID
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
je 0x415ad1
cmp dword [ebp - 0x48], ebx
je 0x415a94
push dword [ebp - 0x48]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [ebp - 0x3c], ebx
je 0x415aa2
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov esi, 0x430238
push 0x9c4d
mov ecx, esi
call sub.MFC42.DLL_CString::LoadStringA
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push 1
push ecx
mov byte [ebp - 4], 0x22
mov ecx, esp
mov dword [ebp - 0x34], esp
jmp 0x415d35
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push dword [0x43022c]
lea eax, [ebp - 0x5ec]
push eax
call sub.MSVCRT.dll_strcpy
pop ecx
lea eax, [ebp - 0x5ec]
pop ecx
push str..EXE
push eax
call dword [sym.imp.MSVCRT.dll__mbsstr]
pop ecx
pop ecx
push str..TLB
push eax
call esi
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x5ec]
push eax
call fcn.00416bb8
pop ecx
push eax
call dword [sym.imp.OLEAUT32.dll_LoadRegTypeLib]
cmp eax, ebx
jge 0x415b55
mov esi, 0x430238
push 0x9c53
mov ecx, esi
call sub.MFC42.DLL_CString::LoadStringA
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push 1
push ecx
mov byte [ebp - 4], 0x16
mov ecx, esp
mov dword [ebp - 0x34], esp
jmp 0x415d35
lea eax, [ebp - 0x5ec]
push ebx
push eax
call fcn.00416bb8
pop ecx
push eax
push dword [ebp - 0x50]
call dword [sym.imp.OLEAUT32.dll_QueryPathOfRegTypeLib]
cmp eax, ebx
jge 0x415ba0
mov esi, 0x430238
push 0x9c49
mov ecx, esi
call sub.MFC42.DLL_CString::LoadStringA
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push 1
push ecx
mov byte [ebp - 4], 0x17
mov ecx, esp
mov dword [ebp - 0x34], esp
jmp 0x415d35
push 0x43022c
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::operator_2
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
mov eax, dword [eax - 8]
sub eax, 0xa
push eax
lea eax, [ebp + 8]
push eax
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x18
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp + 8]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
lea eax, [ebp - 0xd08]
lea ecx, [ebp - 0x14]
push eax
call sub.MFC42.DLL_CString::operator_1
push dword [ebp - 0x14]
lea eax, [ebp - 0xf10]
push eax
call sub.MSVCRT.dll_strcpy
pop ecx
lea eax, [ebp - 0xf10]
pop ecx
push ebx
push eax
call fcn.00416bb8
pop ecx
push eax
call dword [sym.imp.ole32.dll_CoLoadLibrary]
mov edi, eax
cmp edi, ebx
je 0x415e68
push str.DllRegisterServer
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x415dfa
call eax
test eax, eax
jge 0x415ca6
lea ecx, [ebp + 8]
call fcn.00423918
push 0x9c4a
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x19
call sub.MFC42.DLL_CString::LoadStringA
push str.Calling
mov esi, 0x430238
push dword [ebp + 8]
push esi
call sub.MFC42.DLL_CString::Format
add esp, 8
mov ecx, esp
mov dword [ebp - 0x34], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push 1
push ecx
mov byte [ebp - 4], 0x1a
mov ecx, esp
mov dword [ebp - 0x4c], esp
push esi
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x430234]
push 3
mov byte [ebp - 4], 0x19
call fcn.0041c8d7
push edi
call dword [sym.imp.ole32.dll_CoFreeLibrary]
mov byte [ebp - 4], 7
lea ecx, [ebp + 8]
jmp 0x415ecd
push edi
call dword [sym.imp.ole32.dll_CoFreeLibrary]
push 1
mov esi, str.Everyone
pop edi
lea eax, [ebp - 0xd4]
push edi
push edi
push esi
push eax
call fcn.00417151
add esp, 0x10
test eax, eax
je 0x415cf6
mov esi, 0x430238
push 0x9c4b
mov ecx, esi
call sub.MFC42.DLL_CString::LoadStringA
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push edi
push ecx
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x34], esp
jmp 0x415d35
push edi
push edi
lea eax, [ebp - 0xd4]
push esi
push eax
call fcn.004171db
add esp, 0x10
test eax, eax
je 0x415d51
mov esi, 0x430238
push 0x9c4c
mov ecx, esi
call sub.MFC42.DLL_CString::LoadStringA
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push edi
push ecx
mov byte [ebp - 4], 0x20
mov ecx, esp
mov dword [ebp - 0x34], esp
push esi
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x430234]
push 3
mov byte [ebp - 4], 7
call fcn.0041c8d7
jmp 0x415ed2
mov esi, 0x430238
push 0x9d09
mov ecx, esi
call sub.MFC42.DLL_CString::LoadStringA
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push 0x42fd28
call sub.MFC42.DLL_CString::CString_1
push ebx
push ebx
push ecx
mov byte [ebp - 4], 0x21
mov ecx, esp
mov dword [ebp - 0x34], esp
push esi
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x430234]
push ebx
mov byte [ebp - 4], 7
call fcn.0041c8d7
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 6
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], bl
call sub.MFC42.DLL_CString::CString
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::CString
mov eax, edi
jmp 0x415f33
lea ecx, [ebp + 8]
call fcn.00423918
push 0x9c4a
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x1b
call sub.MFC42.DLL_CString::LoadStringA
push str.Calling
mov esi, 0x430238
push dword [ebp + 8]
push esi
call sub.MFC42.DLL_CString::Format
add esp, 8
mov ecx, esp
mov dword [ebp - 0x34], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push 1
push ecx
mov byte [ebp - 4], 0x1c
mov ecx, esp
mov dword [ebp - 0x4c], esp
push esi
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x430234]
push 3
mov byte [ebp - 4], 0x1b
call fcn.0041c8d7
push edi
call dword [sym.imp.ole32.dll_CoFreeLibrary]
mov byte [ebp - 4], 7
lea ecx, [ebp + 8]
jmp 0x415ecd
lea ecx, [ebp + 8]
call fcn.00423918
push 0x9c4a
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x1d
call sub.MFC42.DLL_CString::LoadStringA
push str.Loading
mov esi, 0x430238
push dword [ebp + 8]
push esi
call sub.MFC42.DLL_CString::Format
add esp, 8
mov ecx, esp
mov dword [ebp - 0x34], esp
push esi
call sub.MFC42.DLL_CString::CString_3
push ebx
push 1
push ecx
mov byte [ebp - 4], 0x1e
mov ecx, esp
mov dword [ebp - 0x4c], esp
push esi
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [0x430234]
push 3
mov byte [ebp - 4], 0x1d
call fcn.0041c8d7
mov byte [ebp - 4], 7
lea ecx, [ebp + 8]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 6
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], bl
call sub.MFC42.DLL_CString::CString
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::CString
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 4